LLVM teaching materials

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

LLVM teaching materials

Christian Plessl-2
Hi everyone

I am teaching a lecture on hardware/software codesign which, though not a dedicated compiler course, covers quite a bit of compiler related contents (general introduction, intermediate code, code generation).

I'm currently considering replacing and/or extending this compiler related lecture parts with an introduction to LLVM as an example for a modern compiler framework, which we are also using extensively in our research.

Does anybody know of good teaching materials on LLVM? For example, a basic compiler course that use LLVM as a example? I searched the web a bit but didn't find anything suitable.

Cheers,
  Christian


_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev

smime.p7s (6K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: LLVM teaching materials

Tobias Grosser-3
On 02/28/2011 05:27 AM, Christian Plessl wrote:

> Hi everyone
>
> I am teaching a lecture on hardware/software codesign which, though not a dedicated compiler course, covers quite a bit of compiler related contents (general introduction, intermediate code, code generation).
>
> I'm currently considering replacing and/or extending this compiler related lecture parts with an introduction to LLVM as an example for a modern compiler framework, which we are also using extensively in our research.
>
> Does anybody know of good teaching materials on LLVM? For example, a basic compiler course that use LLVM as a example? I searched the web a bit but didn't find anything suitable.
>
> Cheers,
>    Christian

I put some slides I used on my webpage.

http://www.grosser.es

You can use them. However, they are just a bunch and only about specific
topics. No general compiler introduction. Furthermore, we did have a lot
of interactive discussions, so without having attended the class they
may be difficult to understand.

It would be great to create a svn branch to share slides for such a course.

Cheers
Tobi
_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: LLVM teaching materials

Christian Plessl-2
Hi Tobi

On 28.02.2011, at 15:44, Tobias Grosser wrote:

> On 02/28/2011 05:27 AM, Christian Plessl wrote:
>> Does anybody know of good teaching materials on LLVM? For example, a basic compiler course that use LLVM as a example? I searched the web a bit but didn't find anything suitable.
>
> I put some slides I used on my webpage.
>
> http://www.grosser.es
>
> You can use them. However, they are just a bunch and only about specific
> topics. No general compiler introduction. Furthermore, we did have a lot
> of interactive discussions, so without having attended the class they
> may be difficult to understand.
Thanks for sharing these slides. Though not exactly what I was looking for it is a good inspiration for my own slides.

> It would be great to create a svn branch to share slides for such a course.

I fully agree. Such slides would be useful for teaching LLVM to other but also for people that want to learn LLVM themselves. Recently AMD has published teaching materials for OpenCL (http://developer.amd.com/zones/openclzone/universities/pages/default.aspx). I think something similar for LLVM would be very helpful.

Cheers,
 Christian



_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev

smime.p7s (6K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: LLVM teaching materials

Christian Plessl-2
In reply to this post by Tobias Grosser-3

On 28.02.2011, at 15:44, Tobias Grosser wrote:

> On 02/28/2011 05:27 AM, Christian Plessl wrote:
>> Hi everyone
>>
>> I am teaching a lecture on hardware/software codesign which, though not a dedicated compiler course, covers quite a bit of compiler related contents (general introduction, intermediate code, code generation).
>>
>> I'm currently considering replacing and/or extending this compiler related lecture parts with an introduction to LLVM as an example for a modern compiler framework, which we are also using extensively in our research.
>>
>> Does anybody know of good teaching materials on LLVM? For example, a basic compiler course that use LLVM as a example? I searched the web a bit but didn't find anything suitable.
>>
>> Cheers,
>>   Christian
>
> I put some slides I used on my webpage.
>
> http://www.grosser.es
>
> You can use them. However, they are just a bunch and only about specific
> topics. No general compiler introduction. Furthermore, we did have a lot
> of interactive discussions, so without having attended the class they
> may be difficult to understand.

Thanks, your slides have been helpful. For my course, I came up with the following set of slides for a basic introduction to LLVM.

http://homepages.uni-paderborn.de/plessl/lectures/2011-Codesign/slides/02-Compiler-LLVM.pdf

Anyone is welcome to use these slides.

> It would be great to create a svn branch to share slides for such a course.

Definitely. Such teaching materials would be very useful.

Cheers,
 Christian
_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev

smime.p7s (6K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: LLVM teaching materials

Tobias Grosser-3
On 05/24/2011 05:18 AM, Christian Plessl wrote:

>
> On 28.02.2011, at 15:44, Tobias Grosser wrote:
>
>> On 02/28/2011 05:27 AM, Christian Plessl wrote:
>>> Hi everyone
>>>
>>> I am teaching a lecture on hardware/software codesign which, though not a dedicated compiler course, covers quite a bit of compiler related contents (general introduction, intermediate code, code generation).
>>>
>>> I'm currently considering replacing and/or extending this compiler related lecture parts with an introduction to LLVM as an example for a modern compiler framework, which we are also using extensively in our research.
>>>
>>> Does anybody know of good teaching materials on LLVM? For example, a basic compiler course that use LLVM as a example? I searched the web a bit but didn't find anything suitable.
>>>
>>> Cheers,
>>>    Christian
>>
>> I put some slides I used on my webpage.
>>
>> http://www.grosser.es
>>
>> You can use them. However, they are just a bunch and only about specific
>> topics. No general compiler introduction. Furthermore, we did have a lot
>> of interactive discussions, so without having attended the class they
>> may be difficult to understand.
>
>
> Thanks, your slides have been helpful. For my course, I came up with the following set of slides for a basic introduction to LLVM.
>
> http://homepages.uni-paderborn.de/plessl/lectures/2011-Codesign/slides/02-Compiler-LLVM.pdf
>
> Anyone is welcome to use these slides.

Hey Christian,

thanks for letting us know. I really like your slides and I am tempted
to steal quite a bit, if I talk about LLVM the next time. ;-)

One minor suggestion. You use dotty to show the CFG. I did this a long
time and now moved to xdot.py [1]. I like it a lot better. If you put it
in your path at least the cmake build of LLVM will automatically use it.
(It needs to be in the path, before you run the configure)

Cheers
Tobi


[1]http://code.google.com/p/jrfonseca/wiki/XDot


>> It would be great to create a svn branch to share slides for such a course.
>
> Definitely. Such teaching materials would be very useful.
>
> Cheers,
>   Christian

_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Reply | Threaded
Open this post in threaded view
|

Re: LLVM teaching materials

Sanjiv Gupta
In reply to this post by Christian Plessl-2

I guess even kaleidoscope would serve as a good tutorial

-sanjiv

On 24 May 2011 17:23, "Tobias Grosser" <[hidden email]> wrote:
>
> On 05/24/2011 05:18 AM, Christian Plessl wrote:
> >
> > On 28.02.2011, at 15:44, Tobias Grosser wrote:
> >
> >> On 02/28/2011 05:27 AM, Christian Plessl wrote:
> >>> Hi everyone
> >>>
> >>> I am teaching a lecture on hardware/software codesign which, though not a dedicated compiler course, covers quite a bit of compiler related contents (general introduction, intermediate code, code generation).
> >>>
> >>> I'm currently considering replacing and/or extending this compiler related lecture parts with an introduction to LLVM as an example for a modern compiler framework, which we are also using extensively in our research.
> >>>
> >>> Does anybody know of good teaching materials on LLVM? For example, a basic compiler course that use LLVM as a example? I searched the web a bit but didn't find anything suitable.
> >>>
> >>> Cheers,
> >>>    Christian
> >>
> >> I put some slides I used on my webpage.
> >>
> >> http://www.grosser.es
> >>
> >> You can use them. However, they are just a bunch and only about specific
> >> topics. No general compiler introduction. Furthermore, we did have a lot
> >> of interactive discussions, so without having attended the class they
> >> may be difficult to understand.
> >
> >
> > Thanks, your slides have been helpful. For my course, I came up with the following set of slides for a basic introduction to LLVM.
> >
> > http://homepages.uni-paderborn.de/plessl/lectures/2011-Codesign/slides/02-Compiler-LLVM.pdf
> >
> > Anyone is welcome to use these slides.
>
> Hey Christian,
>
> thanks for letting us know. I really like your slides and I am tempted
> to steal quite a bit, if I talk about LLVM the next time. ;-)
>
> One minor suggestion. You use dotty to show the CFG. I did this a long
> time and now moved to xdot.py [1]. I like it a lot better. If you put it
> in your path at least the cmake build of LLVM will automatically use it.
> (It needs to be in the path, before you run the configure)
>
> Cheers
> Tobi
>
>
> [1]http://code.google.com/p/jrfonseca/wiki/XDot
>
>
> >> It would be great to create a svn branch to share slides for such a course.
> >
> > Definitely. Such teaching materials would be very useful.
> >
> > Cheers,
> >   Christian
>
> _______________________________________________
> LLVM Developers mailing list
> [hidden email]         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev


_______________________________________________
LLVM Developers mailing list
[hidden email]         http://llvm.cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev