| <!--#include virtual="../../header.incl" --> |
| |
| <div class="www_sectiontitle">2008 LLVM Developers' Meeting</div> |
| <table> |
| <tr><td valign="top"> |
| <ol> |
| <li><a href="#proceedings">Proceedings</a></li> |
| <li><a href="#attendees">Attendees</a></li> |
| </ol> |
| </td><td> |
| <ul> |
| <li><b>What</b>: The second general meeting of LLVM Developers and Users. |
| </li> |
| <li><b>Why</b>: To get acquainted, learn how LLVM is used, and exchange |
| ideas.</li> |
| <li><b>When</b>: August 1, 2008</li> |
| <li><b>Where</b>: Apple Campus</li> |
| </ul> |
| </td></tr></table> |
| |
| <p><b>Sponsored By: Apple, Google, Adobe, University of Illinois</b></p> |
| |
| <p>The meeting served as a forum for <a href="http://llvm.org">LLVM</a> |
| developers and users to get acquainted, learn how LLVM is used, and |
| exchange ideas about LLVM, future extensions, and its (potential) |
| applications.</p> |
| |
| <div class="www_sectiontitle" id="proceedings">Proceedings</div> |
| |
| <p>The day was structured to have general overview/introduction talks about some |
| major LLVM subsystems, followed by talks on applications of LLVM for various |
| specific projects.</p> |
| |
| <p>In addition to being available here, the videos are also available <a |
| href="http://www.youtube.com/view_play_list?p=E05430D58DF9A720">on youtube</a>.</p> |
| |
| <table class="www"> |
| <tr><th>Media</th><th>Who</th><th>Description</th></tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="https://youtu.be/13iB2FiFCdo">Video</a>] |
| </td> |
| <td>Chris Lattner<br><i>Apple, Inc.</i></td> |
| <td><b>Welcome and Thanks</b> - A brief welcome, thanks and some logistics |
| for the day.</td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Naroff_Clang.pdf">Slides</a>] |
| [<a href="https://youtu.be/qYe_w2wt54U">Video</a>] |
| </td> |
| <td>Steve Naroff<br><i>Apple, Inc.</i></td> |
| <td> |
| <b>Clang Internals</b> - <a href="http://clang.llvm.org/">Clang</a> is |
| is a new C/ObjC/C++ front-end in development as part of the LLVM project. |
| This talk describes its current status, high level architecture, and how |
| its Abstract Syntax Trees (ASTs) work. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Gohman_CodeGenAndSelectionDAGs.pdf">Slides</a>] |
| [<a href="https://youtu.be/Y5kbSDi7qb8">Video</a>] |
| </td> |
| <td>Dan Gohman<br><i>Apple, Inc.</i></td> |
| <td><b>CodeGen Overview and Focus on SelectionDAGs</b> - A high-level |
| overview of the LLVM Code Generator, with specific depth and overview in the |
| area of the SelectionDAG phases. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Cheng_RegisterAllocation.pdf">Slides</a>] |
| [<a href="https://youtu.be/ktXFOlyEOtY">Video</a>] |
| </td> |
| <td>Evan Cheng<br><i>Apple, Inc.</i></td> |
| <td><b>LLVM Register Allocation</b> - Description of the current design and |
| architecture of the LLVM register allocator. The talk discusses some |
| optimizations that are currently performed as well as describing future |
| directions and where we'd like to go. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Begeman_EfficientJIT.pdf">Slides</a>] |
| [<a href="https://youtu.be/ZPw6JYIQfMo">Video</a>] |
| </td> |
| <td>Nate Begeman<br><i>Apple, Inc.</i></td> |
| <td><b>Building an Efficient JIT</b> - LLVM provides many of the facilities |
| that you need to assemble a JIT for various purposes. This talk walks |
| you through construction of a simple JIT for C code (based on Clang) and |
| talks about some of the important APIs for doing this. After getting it |
| working, Nate describes the efficiency implications of various choices and |
| describes how to dramatically improve the efficiency of the first |
| implementation. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Rose_AdobePixelBender.pdf">Slides</a>] |
| [<a href="https://youtu.be/bzhXXfUbJv8">Video</a>] |
| </td> |
| <td>Chuck Rose III<br><i>Adobe Inc.</i></td> |
| <td><b>Adobe Image Foundation and Adobe PixelBender</b> - Adobe Image |
| Foundation is a system for JIT compiling code written in the Adobe |
| PixelBender language to run on the CPU and GPU. This talk describes how |
| AIF and PixelBender work and how it uses LLVM to evaluate dependencies, |
| reason about dirty regions of images, and do pixel processing when a GPU |
| cannot handle a program. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Kremenek_StaticAnalyzer.pdf">Slides</a>] |
| [<a href="https://youtu.be/_HTcWKqRXXs">Video</a>] |
| </td> |
| <td>Ted Kremenek<br><i>Apple, Inc.</i></td> |
| <td><b>Finding Bugs with the Clang Static Analyzer</b> - The Clang Static |
| Analyzer is a standalone tool that find bugs in C and Objective-C |
| programs. The analyzer is 100% open source and part of the Clang |
| project (a new C/Objective-C/C++ frontend for LLVM). Although still |
| very early in its development, the tool has been effective at finding |
| thousands of bugs in real-world C and Objective-C programs. This talk |
| presents a high-level overview of the goals, implementation, and |
| current status of the tool. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Lopes_PHP-JIT-InTwoDays.pdf">Slides</a>] |
| [<a href="https://youtu.be/NDm5cBpYIqw">Video</a>] |
| </td> |
| <td>Nuno Lopes<br><i>Instituto Superior Tecnico</i></td> |
| <td><b>Building a JIT compiler for PHP in 2 days</b> - This talk describes |
| the implementation of the PHP interpreter and how it was easily changed into |
| an LLVM JIT. This discusses why the facilities that LLVM provides make this |
| easy, and gives some (very early) results. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Korobeynikov_LLVMC2-CompilerDriver.pdf">Slides</a>] |
| [<a href="https://youtu.be/f9MQI9IUy_M">Video</a>] |
| </td> |
| <td>Anton Korobeynikov<br><i>Saint Petersburg State University</i></td> |
| <td><b>llvmc2 Compiler Driver</b> - 'llvmc2' is the LLVM Compiler Driver, |
| which is useful to people building new languages and tools from the LLVM |
| toolchain. This talk describes the constraints and purpose of a compiler |
| driver and discusses how llvmc2 fills the needs and works with those |
| constraints. Finally, the talk describes some of the low-level architecture |
| and future directions of llvmc2. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Criswell_SVA.pdf">Slides</a>] |
| [No video] |
| </td> |
| <td>John Criswell<br><i>University of Illinois</i></td> |
| <td><b>SVA: Using LLVM to Provide Memory Safety</b> - <a |
| href="http://sva.cs.uiuc.edu/">SVA</a> is an aggressive approach to |
| provide an efficient compiler-based system with memory safety on top |
| of the LLVM IR. <i>Unfortunately, video is not available due to |
| camera problems.</i> |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Geoffray_VMKitProject.pdf">Slides</a>] |
| [<a href="https://youtu.be/XHRd6Qhwbyw">Video</a>] |
| </td> |
| <td>Nicolas Geoffray<br><i>Universite Pierre et Marie Curie</i></td> |
| <td><b>The VMKit Project</b> - VMKit is an implementation of the Java and |
| .NET Virtual Machines that use LLVM to optimize and JIT compile the code. |
| This talk describes how VMKit integrates components from various systems, |
| how bytecode translation works, describes the current performance status |
| of the system, and discusses areas for future extension. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Sander_HW-SW-CoDesignflowWithLLVM.pdf">Slides</a>] |
| [<a href="https://youtu.be/6-Cp6MlLu-I">Video</a>] |
| </td> |
| <td>Tim Sander<br><i>Technischen Universitat Darmstadt</i></td> |
| <td><b>Designflow: using LLVM to compile to Hardware</b> - This project uses |
| LLVM to compile code to a mixed hardware and software implementation. This |
| detects pieces of programs that may be efficiently compiled to VHDL and |
| synthesized them onto an FPGA. The rest of the program is compiled to |
| PowerPC code and uses to drive the FPGA. The system automatically handles |
| data migration and other handshaking between the two systems. |
| </td> |
| </tr> |
| |
| <tr> |
| <td align="center"> |
| [<a href="Petersen_FlashCCompiler.pdf">Slides</a>] |
| [<a href="https://youtu.be/f7xniMC4J5U">Video</a>] |
| </td> |
| <td>Scott Petersen<br><i>Adobe Inc.</i></td> |
| <td><b>Flash C Compiler: Compiling C code to the Adobe Flash Virtual |
| Machine</b> - FlaCC is a research project that compiles C code to |
| ActionScript using llvm-gcc with a custom flash code generator. This |
| enables almost arbitrary C and C++ code to be executed safely and |
| efficiently within a Flash container on web pages. This talk describes |
| the implementation of the system and shows several compelling examples |
| that use it to run other language and CPU interpreters within Flash as |
| well as run existing large programs within C. The demos are also |
| extremely impressive :). |
| </td> |
| </tr> |
| </table> |
| |
| |
| |
| <div class="www_sectiontitle"><a name="attendees">Attendees</a></div> |
| <div class="www_text"> |
| <p>This table lists all attendees that have registered for this |
| year's conference.</p> |
| |
| <table class="www"> |
| <tr><th>Name</th><th>Organization</th></tr> |
| <tr><td>Talin -</td><td>Google</td></tr> |
| <tr><td>Vikram Adve</td><td>University of Illinois at Urbana-Champaign</td></tr> |
| <tr><td>Nathan Allan</td><td>Alphora / Database Consulting Group</td></tr> |
| <tr><td>Owen Anderson</td><td>Apple, Inc.</td></tr> |
| <tr><td>Chris Aoki</td><td>Sun Microsystems, Inc.</td></tr> |
| <tr><td>Michael AuYeung</td><td>The Aerospace Corporation</td></tr> |
| <tr><td>Joseph Battelle</td><td>Logitech</td></tr> |
| <tr><td>Nate Begeman</td><td>Apple, Inc.</td></tr> |
| <tr><td>Kris Bell</td><td>Apple, Inc.</td></tr> |
| <tr><td>Jay Bharadwaj</td><td>Intel Corporation</td></tr> |
| <tr><td>Robert Bowdidge</td><td>Self</td></tr> |
| <tr><td>Max Burke</td><td>Electronic Arts</td></tr> |
| <tr><td>Anders Carlsson</td><td>Apple, Inc.</td></tr> |
| <tr><td>Chandler Carruth</td><td>Google, Inc</td></tr> |
| <tr><td>Evan Cheng</td><td>Apple, Inc.</td></tr> |
| <tr><td>Andy Chou</td><td>Coverity, Inc.</td></tr> |
| <tr><td>Eric Christopher</td><td>Apple, Inc</td></tr> |
| <tr><td>Jan Civlin</td><td>AMD</td></tr> |
| <tr><td>Marshall Clow</td><td>Qualcomm, Inc.</td></tr> |
| <tr><td>John Criswell</td><td>University of Illinois</td></tr> |
| <tr><td>Brooks Davis</td><td>The Aerospace Corporation / The FreeBSD Project</td></tr> |
| <tr><td>Andrew Donoho</td><td>IBM</td></tr> |
| <tr><td>Stefanus Du Toit</td><td>RapidMind</td></tr> |
| <tr><td>Daniel Dunbar</td><td>Stanford University / Apple Inc.</td></tr> |
| <tr><td>Bernardo Elayda</td><td>Wind River</td></tr> |
| <tr><td>Ken Ferry</td><td>Apple, Inc.</td></tr> |
| <tr><td>Tim Foley</td><td>Self</td></tr> |
| <tr><td>Chandrashekhar Garud</td><td>Sun Microsystems</td></tr> |
| <tr><td>Nicolas Geoffray</td><td>Université Pierre et Marie Curie</td></tr> |
| <tr><td>Dan Gohman</td><td>Apple, Inc.</td></tr> |
| <tr><td>John Golenbieski</td><td>Self</td></tr> |
| <tr><td>Eric Gouriou</td><td>Apple, Inc.</td></tr> |
| <tr><td>Ryan Govostes</td><td>Alacatia Labs, Inc.</td></tr> |
| <tr><td>David Greene</td><td>Cray, Inc.</td></tr> |
| <tr><td>Jim Grosbach</td><td>Apple, Inc.</td></tr> |
| <tr><td>Vinod Grover</td><td>NVIDIA</td></tr> |
| <tr><td>Alfonso Guerra</td><td>Apokalypse Software Corp.</td></tr> |
| <tr><td>Mohammad Reza Haghighat</td><td>Intel Corporation</td></tr> |
| <tr><td>Chris Hanson</td><td>Apple, Inc.</td></tr> |
| <tr><td>Kurt Harriman</td><td>Greenplum</td></tr> |
| <tr><td>Stuart Hastings</td><td>Apple, Inc.</td></tr> |
| <tr><td>John Hixson</td><td>University of the Pacific</td></tr> |
| <tr><td>Robert Hundt</td><td>Google</td></tr> |
| <tr><td>Oliver Hunt</td><td>Apple, Inc.</td></tr> |
| <tr><td>Changhao Jiang</td><td>Facebook Inc.</td></tr> |
| <tr><td>dale johannesen</td><td>Apple, Inc.</td></tr> |
| <tr><td>Francois Jouaux</td><td>Apple, Inc.</td></tr> |
| <tr><td>Benjamin King</td><td>DemandEO.com</td></tr> |
| <tr><td>George King</td><td>arboreality.net</td></tr> |
| <tr><td>Nick Kledzik</td><td>Apple, Inc.</td></tr> |
| <tr><td>Anton Korobeynikov</td><td>Saint Petersburg State University</td></tr> |
| <tr><td>Ted Kremenek</td><td>Apple, Inc.</td></tr> |
| <tr><td>Chris Lattner</td><td>Apple, Inc.</td></tr> |
| <tr><td>Tanya Lattner</td><td>Apple, Inc.</td></tr> |
| <tr><td>Andrew Lenharth</td><td>University of Illinois</td></tr> |
| <tr><td>Mark Leone</td><td>Self</td></tr> |
| <tr><td>Julien Lerouge</td><td>Apple, Inc.</td></tr> |
| <tr><td>Nicholas Lewycky</td><td>Google</td></tr> |
| <tr><td>Nuno Lopes</td><td>Instituto Superior Técnico</td></tr> |
| <tr><td>olivier maggi</td><td>numeriz</td></tr> |
| <tr><td>Dmitri Makarov</td><td>AMD</td></tr> |
| <tr><td>Ali Mashtizadeh</td><td>VMware, Inc.</td></tr> |
| <tr><td>Henry Mason</td><td>Apple, Inc.</td></tr> |
| <tr><td>Scott Michel</td><td>Aerospace</td></tr> |
| <tr><td>Keir Mierle</td><td>Google</td></tr> |
| <tr><td>Daniel Moniz</td><td>Unified Research</td></tr> |
| <tr><td>Marcel Moolenaar</td><td>The FreeBSD Project</td></tr> |
| <tr><td>Alireza Moshtaghi</td><td>Microchip Technology</td></tr> |
| <tr><td>Ginger Myles</td><td>Apple, Inc.</td></tr> |
| <tr><td>Prashanth Narayanaswamy</td><td>Sun Microsystems</td></tr> |
| <tr><td>Steve Naroff</td><td>Apple, Inc.</td></tr> |
| <tr><td>Ted Neward</td><td>Neward & Associates</td></tr> |
| <tr><td>Jay O'Conor</td><td>Self</td></tr> |
| <tr><td>Maksim Panchenko</td><td>Sun Microsystems</td></tr> |
| <tr><td>Ji Young Park</td><td>AMD Inc.</td></tr> |
| <tr><td>Terence Parr</td><td>University of San Francisco</td></tr> |
| <tr><td>Devang Patel</td><td>Apple, Inc.</td></tr> |
| <tr><td>Scott Petersen</td><td>Adobe Systems, Inc.</td></tr> |
| <tr><td>Richard Phillips</td><td>Wolfram Research</td></tr> |
| <tr><td>Ernest Prabhakar</td><td>Apple, Inc.</td></tr> |
| <tr><td>Gregor Purdy</td><td>Apple, Inc.</td></tr> |
| <tr><td>Paul Ramsey</td><td>Dreamworks Animation</td></tr> |
| <tr><td>Joseph Ranieri</td><td>Alacatia Labs, Inc.</td></tr> |
| <tr><td>Nicholas Ray</td><td>Windly Games.</td></tr> |
| <tr><td>Rob Reynolds</td><td>Alphora / Database Consulting Group</td></tr> |
| <tr><td>Bryn Rhodes</td><td>Alphora / Database Consulting Group</td></tr> |
| <tr><td>Stephen Richardson</td><td>Mucho Consultio, SA de CV</td></tr> |
| <tr><td>Charles Rose</td><td>Adobe Systems Incorporated</td></tr> |
| <tr><td>Tim Sander</td><td>Integrated Systems and Circuits, Technische Universität Darmstadt</td></tr> |
| <tr><td>Shirish Seetharam</td><td>Cisco Systems</td></tr> |
| <tr><td>Mitesh Shah</td><td>ARC International</td></tr> |
| <tr><td>Craig Smith</td><td>National Instruments</td></tr> |
| <tr><td>Evan Smyth</td><td>DreamWorks Animation</td></tr> |
| <tr><td>Pratik Solanki</td><td>Apple, Inc.</td></tr> |
| <tr><td>Mike Stump</td><td>Apple, Inc.</td></tr> |
| <tr><td>Andre Sublette</td><td>Self</td></tr> |
| <tr><td>Richard Sweet</td><td>Adobe Systems</td></tr> |
| <tr><td>Yan Tang</td><td>VMware</td></tr> |
| <tr><td>Caroline Tice</td><td>Apple, Inc.</td></tr> |
| <tr><td>Ross Towle</td><td>Sun</td></tr> |
| <tr><td>Andrew Trick</td><td>Hewlett-Packard</td></tr> |
| <tr><td>Hemant Trivedi</td><td>Silicon Informatics, Inc</td></tr> |
| <tr><td>Erick Tryzelaar</td><td>self</td></tr> |
| <tr><td>Mon Ping Wang</td><td>Apple, Inc.</td></tr> |
| <tr><td>Douglas Watt</td><td>XMOS Semiconductor</td></tr> |
| <tr><td>Patrick Webster</td><td>Self</td></tr> |
| <tr><td>Marcel Weiher</td><td>Apple, Inc.</td></tr> |
| <tr><td>Sam Weinig</td><td>Apple, Inc.</td></tr> |
| <tr><td>Steve Weissinger</td><td>Wind River</td></tr> |
| <tr><td>Bill Wendling</td><td>Apple, Inc.</td></tr> |
| <tr><td>Hans-Martin Will</td><td>Vincent 3D Rendering Library (OSS project)</td></tr> |
| <tr><td>Pen-Chung Yew</td><td>University of Minnesota</td></tr> |
| <tr><td>Anna Zaks</td><td>New York University</td></tr> |
| <tr><td>Mark Zarins</td><td>GrammaTech</td></tr> |
| <tr><td>Robert Zeh</td><td>None</td></tr> |
| <tr><td>Jie Zhang</td><td>Greenplum Inc.</td></tr> |
| <tr><td>Bixia Zheng</td><td>AMD</td></tr> |
| <tr><td>Vojin Zivojnovic</td><td>ARM</td></tr> |
| </table> |
| <p><b>Total Confirmed: 118</b></p> |
| </div> |
| |
| <!-- *********************************************************************** --> |
| <hr> |
| |
| <!--#include virtual="../../footer.incl" --> |