<html><head>
<script>function a(c){this.t={};this.tick=function(d,e,b){var f=b?b:(new Date).getTime();this.t[d]=[f,e]};this.tick("start",null,c)}var g=new a;window.jstiming={Timer:a,load:g};try{window.jstiming.pt=window.external.pageT}catch(h){};
</script>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<base target="_top">
<title>Third Annual LLVM Developer' ...</title>
<style type="text/css">
/* default css */
table {
font-size: 1em;
line-height: inherit;
border-collapse: collapse;
}
tr {
text-align: left;
}
div, address, ol, ul, li, option, select {
margin-top: 0px;
margin-bottom: 0px;
}
p {
margin: 0px;
}
pre {
font-family: Courier New;
white-space: pre-wrap;
margin:0;
}
body {
margin: 6px;
padding: 0px;
font-family: Verdana, sans-serif;
font-size: 10pt;
background-color: #ffffff;
}
img {
-moz-force-broken-image-icon: 1;
}
@media screen {
html.pageview {
background-color: #f3f3f3 !important;
}
body {
min-height: 1100px;
counter-reset: __goog_page__;
}
* html body {
height: 1100px;
}
.pageview body {
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
border-right: 2px solid #bbb;
border-bottom: 2px solid #bbb;
width: 648px !important;
margin: 15px auto 25px;
padding: 40px 50px;
}
/* IE6 */
* html {
overflow-y: scroll;
}
* html.pageview body {
overflow-x: auto;
}
/* Prevent repaint errors when scrolling in Safari. This "Star-7" css hack
targets Safari 3.1, but not WebKit nightlies and presumably Safari 4.
That's OK because this bug is fixed in WebKit nightlies/Safari 4 :-). */
html*#wys_frame::before {
content: '\A0';
position: fixed;
overflow: hidden;
width: 0;
height: 0;
top: 0;
left: 0;
}
.writely-callout-data {
display: none;
*display: inline-block;
*width: 0;
*height: 0;
*overflow: hidden;
}
.writely-footnote-marker {
background-image: url('images/footnote_doc_icon.gif');
background-color: transparent;
background-repeat: no-repeat;
width: 7px;
overflow: hidden;
height: 16px;
vertical-align: top;
-moz-user-select: none;
}
.editor .writely-footnote-marker {
cursor: move;
}
.writely-footnote-marker-highlight {
background-position: -15px 0;
-moz-user-select: text;
}
.writely-footnote-hide-selection ::-moz-selection, .writely-footnote-hide-selection::-moz-selection {
background: transparent;
}
.writely-footnote-hide-selection ::selection, .writely-footnote-hide-selection::selection {
background: transparent;
}
.writely-footnote-hide-selection {
cursor: move;
}
.editor .writely-comment-yellow {
background-color: #FF9;
background-position: -240px 0;
}
.editor .writely-comment-yellow-hover {
background-color: #FF0;
background-position: -224px 0;
}
.editor .writely-comment-blue {
background-color: #C0D3FF;
background-position: -16px 0;
}
.editor .writely-comment-blue-hover {
background-color: #6292FE;
background-position: 0 0;
}
.editor .writely-comment-orange {
background-color: #FFDEAD;
background-position: -80px 0;
}
.editor .writely-comment-orange-hover {
background-color: #F90;
background-position: -64px 0;
}
.editor .writely-comment-green {
background-color: #99FBB3;
background-position: -48px 0;
}
.editor .writely-comment-green-hover {
background-color: #00F442;
background-position: -32px 0;
}
.editor .writely-comment-cyan {
background-color: #CFF;
background-position: -208px 0;
}
.editor .writely-comment-cyan-hover {
background-color: #0FF;
background-position: -192px 0;
}
.editor .writely-comment-purple {
background-color: #EBCCFF;
background-position: -144px 0;
}
.editor .writely-comment-purple-hover {
background-color: #90F;
background-position: -128px 0;
}
.editor .writely-comment-magenta {
background-color: #FCF;
background-position: -112px 0;
}
.editor .writely-comment-magenta-hover {
background-color: #F0F;
background-position: -96px 0;
}
.editor .writely-comment-red {
background-color: #FFCACA;
background-position: -176px 0;
}
.editor .writely-comment-red-hover {
background-color: #FF7A7A;
background-position: -160px 0;
}
.editor .writely-comment-marker {
background-image: url('images/markericons_horiz.gif');
background-color: transparent;
padding-right: 11px;
background-repeat: no-repeat;
width: 16px;
height: 16px;
-moz-user-select: none;
}
.editor .writely-comment-hidden {
padding: 0;
background: none;
}
.editor .writely-comment-marker-hidden {
background: none;
padding: 0;
width: 0;
}
.editor .writely-comment-none {
opacity: .2;
filter:progid:DXImageTransform.Microsoft.Alpha(opacity=20);
-moz-opacity: .2;
}
.editor .writely-comment-none-hover {
opacity: .2;
filter:progid:DXImageTransform.Microsoft.Alpha(opacity=20);
-moz-opacity: .2;
}
.br_fix span+br:not(:-moz-last-node) {
position:relative;
left: -1ex
}
#cb-p-tgt {
font-size: 8pt;
padding: .4em;
font-style: oblique;
background-color: #FFF1A8;
border: 1px solid #000;
}
}
h6 { font-size: 8pt }
h5 { font-size: 8pt }
h4 { font-size: 10pt }
h3 { font-size: 12pt }
h2 { font-size: 14pt }
h1 { font-size: 18pt }
blockquote {padding: 10px; border: 1px #DDD dashed }
.webkit-indent-blockquote { border: none; }
a img {border: 0}
.pb {
border-width: 0;
page-break-after: always;
/* We don't want this to be resizeable, so enforce a width and height
using !important */
height: 1px !important;
width: 100% !important;
}
.editor .pb {
border-top: 1px dashed #C0C0C0;
border-bottom: 1px dashed #C0C0C0;
}
div.google_header, div.google_footer {
position: relative;
margin-top: 1em;
margin-bottom: 1em;
}
/* Table of contents */
.editor div.writely-toc {
background-color: #f3f3f3;
border: 1px solid #ccc;
}
.writely-toc > ol {
padding-left: 3em;
font-weight: bold;
}
ol.writely-toc-subheading {
padding-left: 1em;
font-weight: normal;
}
/* IE6 only */
* html writely-toc ol {
list-style-position: inside;
}
.writely-toc-none {
list-style-type: none;
}
.writely-toc-decimal {
list-style-type: decimal;
}
.writely-toc-upper-alpha {
list-style-type: upper-alpha;
}
.writely-toc-lower-alpha {
list-style-type: lower-alpha;
}
.writely-toc-upper-roman {
list-style-type: upper-roman;
}
.writely-toc-lower-roman {
list-style-type: lower-roman;
}
.writely-toc-disc {
list-style-type: disc;
}
/* Ordered lists converted to numbered lists can preserve ordered types, and
vice versa. This is confusing, so disallow it */
ul[type="i"], ul[type="I"], ul[type="1"], ul[type="a"], ul[type="A"] {
list-style-type: disc;
}
ol[type="disc"], ol[type="circle"], ol[type="square"] {
list-style-type: decimal;
}
/* end default css */
/* custom css */
/* end custom css */
/* ui edited css */
body {
font-family: Verdana;
font-size: 10.0pt;
line-height: normal;
background-color: #ffffff;
}
/* end ui edited css */
/* editor CSS */
.editor a:visited {color: #551A8B}
.editor table.zeroBorder {border: 1px dotted gray}
.editor table.zeroBorder td {border: 1px dotted gray}
.editor table.zeroBorder th {border: 1px dotted gray}
.editor div.google_header, .editor div.google_footer {
border: 2px #DDDDDD dashed;
position: static;
width: 100%;
min-height: 2em;
}
.editor .misspell {background-color: yellow}
.editor .writely-comment {
font-size: 9pt;
line-height: 1.4;
padding: 1px;
border: 1px dashed #C0C0C0
}
/* end editor CSS */
</style>
<style>
body {
margin: 0px;
}
#doc-contents {
margin: 6px;
}
#google-view-footer {
clear: both;
border-top: thin solid;
padding-top: 0.3em;
padding-bottom: 0.3em;
}
a.google-small-link:link, a.google-small-link:visited {
color:#112ABB;
font-family:Arial,Sans-serif;
font-size:11px !important;
}
body, p, div, td {
direction: inherit;
}
@media print {
#google-view-footer {
display: none;
}
}
</style>
<script>
function viewOnLoad() {
if (document.location.href.indexOf('spi=1') != -1) {
if (navigator.userAgent.toLowerCase().indexOf('msie') != -1) {
window.print();
} else {
window.setTimeout(window.print, 10);
}
}
if (document.location.href.indexOf('hgd=1') != -1) {
var footer = document.getElementById("google-view-footer");
if (footer) {
footer.style.display = 'none';
}
}
}
</script>
</head><body onload="window.jstiming.load.tick('ol'); window.jstiming.report(window.jstiming.load, null, document.location.protocol == 'https:' ? 'https://gg.google.com/csi' : null);" style="-webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><base href="http://docs.google.com/View?docID=ddttqqr8_8fzbvxpcv&revision=_latest&hgd=1"><div id="doc-contents"><span id="ap-20" style="FONT-FAMILY:Helvetica"><div id="ap-21"><div id="o3iz0"><b id="ap-22"><font size="3">T</font><font size="3">h</font><font size="3">i</font><font size="3">r</font><font size="3">d Annual</font><font size="3"> </font><font size="3">LLVM Developers' Meeting</font></b>
</div>
<div id="vy15">
<b id="ap-23">October 2, 2009 - Apple Inc. Campus, Cupertino, California, U.S.A.</b>
</div>
<div id="ql1m">
<br id="w:hg1">
</div>
<div id="cqcg">
The third annual LLVM Developers' Meeting will be held this on October 2, 2009 at Apple Inc.'s main campus in Cupertino, California, USA:
</div>
<div id="la-b">
<br id="ap-24">
</div>
<div id="yom_">
  <a id="c3o1" href="http://llvm.org/devmtg/2009-10" title="http://llvm.org/devmtg/2009-10">http://llvm.org/devmtg/2009-10</a></div>
<div id="zy_k">
<br id="ap-26">
</div>
<div id="muyp">
As with previous meetings, this gathering serves as a forum for both developers and users of LLVM to get acquainted, to learn how LLVM is used, and to exchange ideas about LLVM and its potential applications.
</div><div id="i-g6"><br></div><div id="p07y">Beyond discussing the core LLVM compiler infrastructure, the meeting will also dedicate a significant amount of attention to Clang, LLVM's reusable, library-based frontend for C-based languages.</div>
<div id="zrmo9x">
<br>
</div>
<div id="i2w970">
<div id="s1.u_">
This meeting will be of interest to the following people:
</div>
<div id="zqt7">
<br id="f45w1">
</div>
<div id="nzh3">
<div id="ap-211">
 Active LLVM (and Clang) developers and users
</div>
<div id="ap-212">
 Anyone interested in using LLVM as part of a commercial product, open-source project, or research
</div>
<div id="ap-213">
 Compiler, programming language, and language runtime enthusiasts
</div>
<div id="ap-214">
 Those interested in using compiler technology in novel and interesting ways</div></div></div><div id="ppw6e"><div id="lqi7"><br></div><div id="mnlvq">=======</div><div id="mgw64"><br></div><div id="tpdju"><b><font size="3">Logistics</font></b></div><div id="c6p78"><br></div><div id="c6cf">
<b><font size="2">1. Registration</font></b>
</div>
<div>
<br>
</div>
</div>
<div id="h7rmo">
Attendance to this year's meeting is free, but those who wish to attend <b>must</b> officially register.
</div>
<div id="jx_2w">
<br>
</div>
<div id="j70f:">
We invite everyone to <b id="ap-27">officially register</b> by <b id="ap-28">September 20, 2009</b> for this meeting via our website:
</div>
<div id="y3:i">
<br id="ap-29">
</div>
<div id="l6-8">
  <a href="http://llvm.org/devmtg/register.php" id="ap-210">http://llvm.org/devmtg/register.php</a></div><div id="emp2c"><br></div>
<div id="kgc-">
<div id="jzjk">
<b><font size="2">2. Mailing List</font></b>
</div>
</div>
<div id="vb3w5">
<br>
</div>
<div id="m0b9i">
<div id="ijuaf">
<div id="xj_wn">
<div id="ap-217">
</div>
<div id="ap-218">
We also invite you to sign up for the official Developer Meeting mailing list to be kept informed of updates concerning the meeting:
</div>
<div id="ap-219">
<br id="ap-220">
</div>
<div id="ap-221">
  <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-devmeeting" id="ap-222">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-devmeeting</a>
</div>
<div id="xjc4"><br></div><div id="n:pb2"><div id="l0vn7"><div id="w21lo"><b><font size="2">3. Travel</font></b></div><div id="gee5x"><b><span style="font-weight: normal"><div id="s0jz"><br></div><div id="mgw64x">For those traveling to the area to attend the meeting, we plan on blocking rooms at a local hotel in order to provide reduced rates to our attendees.  Details will be forthcoming in subsequent announcements.  Please subscribe to the developer meeting mailing list (see above) to receive such updates.</div><div id="rdjum6"><br></div><div id="n78z:p"><b>4. Financial Support</b></div><div id="z2d0vn"><br></div><div id="xrgh">Students or extremely active developers may apply for financial support to attend the meeting. A limited amount of funds will be available and those funded may be required to give a talk. Please apply for financial support by July 30, 2009 via the website:</div><div id="mnlv"><br></div><div id="gee5xf"><a href="http://www.llvm.org/devmtg/students.php" id="r8z:pb2" title="http://www.llvm.org/devmtg/students.php">http://www.llvm.org/devmtg/students.php</a><br></div><div id="ajnq"><br></div><div id="bjan5"><font size="2">=======</font></div></span></b></div></div></div>
<div id="ap-224">
<br>
</div>
<div id="rcpg2">
<b id="ap-231"><font size="3">Potential Speakers</font></b>
</div>
<div id="ap-232">
<br id="wn6t2">
</div>
<div id="ap-233">
If you are interested in presenting at this year's LLVM Developers' Meeting, please submit your talk proposal to us by <b>August 23, 2009</b> via the website: 
</div>
<div id="ap-234">
<br id="ap-235">
</div>
<div id="ap-236">
  <a href="http://www.llvm.org/devmtg/talk.php" id="s4xp">http://www.llvm.org/devmtg/talk.php</a></div>
</div>
<div id="efwgd">
<br id="m.yh9">
</div><div id="zydn-"><div id="xglio"><div id="r9dya"><div id="zs4:7"><b><span style="font-weight: normal"><div id="cwe24"><font size="2">=======</font></div><div><br></div></span></b></div></div></div></div>
<div id="d_n_">
<b id="n68t"><font size="3">About LLVM</font></b>
</div>
<div id="dgz8">
<br id="gsfi1">
</div>
<div id="emp2">
The Low-Level Virtual Machine (LLVM) is a collection of libraries and tools that make it easy to build compilers, optimizers, Just-In-Time code generators, and many other compiler-related programs. LLVM uses a single, language-independent virtual instruction set both as an offline code representation (to communicate code between compiler phases and to run-time systems) and as the compiler internal representation (to analyze and transform programs). This persistent code representation allows a common set of sophisticated compiler techniques to be applied at compile-time, link-time, install-time, run-time, or "idle-time" (between program runs).
</div>
<div id="qfpm">
<br id="lcur2">
</div>
<div id="zg9e">
The strengths of the LLVM infrastructure are its extremely simple design (which makes it easy to understand and use), source-language independence, powerful mid-level optimizer, automated compiler debugging support, extensibility, and its stability and reliability. LLVM is currently being used to host a wide variety of academic research projects and commercial projects.
</div>
<div id="qkt-">
<br id="b1et4">
</div>
<div id="d3w5">
For more information, please visit: <a href="http://llvm.org" id="ap-239">http://llvm.org</a></div>
<div id="e1-p">
<br>
</div>
<div id="qy3:">
<div id="x4pm">
<b id="ozy-"><font size="3">About Clang</font></b>
</div>
<div>
<br>
</div>
</div>
<div id="b3jo">
<span style="FONT-FAMILY:Helvetica">
<div id="t7ck" style=" direction:inherit">
Clang, a subproject of LLVM, is a modular and resuable frontend for C-based languages. It targets support for C, Objective-C, and C++.  Clang is mature and fast, and supports a fully working LLVM-based compiler for C and Objective-C, with C++ support underway.</div>
<div id="swku" style=" direction:inherit">
<br id="vz9q0">
</div>
<div id="l18h" style=" direction:inherit">
Like the rest of LLVM, Clang consists of a collection of libraries, making it versatile in its applications.  The goal of Clang is to be multipurpose, allowing not only the creation of standalone compilers for C-based languages, but also intelligent IDEs, refactoring tools, source to source translators, static analysis tools, and countless others.  Other design goals of Clang include 100% compatibility with GCC and a high quality of implementation that makes Clang fast, scalable, and easy to customize and expand.
</div>
<div id="wxl2" style=" direction:inherit">
<br id="er-40">
</div>
<div id="xzqd" style=" direction:inherit">This year's meeting will include an extensive discussion of Clang and its applications.</div>
<div id="g-7y" style=" direction:inherit">
<br id="domh0">
</div>
<div id="us-3" style=" direction:inherit">
For more information, please visit: <a href="http://clang.llvm.org" id="oih-" title="http://clang.llvm.org">http://clang.llvm.org</a></div>
</span>
</div>
</div>
</div>
</div>
</span><br>
<br clear="all">
</div>
<div id="google-view-footer" style="display: none; ">
<div id="maybecanedit" style="float:right">
<a class="google-small-link" id="editpermissionlink" href="Doc?tab=edit&dr=true&id=ddttqqr8_8fzbvxpcv" title="Edit this page">
Edit this page (if you have permission)</a>
<span style="color:#676767;">|</span>
<input id="report-abuse-button" type="button" value="Report abuse" onclick="reportAbuse();">
</div>
<div style="float:left">
<a title="Learn more about Google Docs" class="google-small-link" href="/">
Google Docs -- Web word processing, presentations and spreadsheets.</a>
</div>
<p>  
</p></div>
<script><!--
    viewOnLoad();
    if(window.jstiming){window.jstiming.a={};window.jstiming.c=1;function k(a,d,f){var b=a.t[d];if(!b)return undefined;b=a.t[d][0];if(f!=undefined)var h=f;else h=a.t.start[0];return b-h}window.jstiming.report=function(a,d,f){var b="";if(<a href="http://window.jstiming.pt">window.jstiming.pt</a>){b+="&srt="+window.jstiming.pt;delete window.jstiming.pt}try{if(window.external&&window.external.tran)b+="&tran="+window.external.tran}catch(h){}if(a.b)b+="&"+a.b;var e=a.t,p=e.start,l=[],i=[];for(var c in e)if(!(c=="start"))if(!(c.indexOf("_")==0)){var j=
e[c][1];if(j)e[j]&&i.push(c+"."+k(a,c,e[j][0]));else p&&l.push(c+"."+k(a,c))}delete e.start;if(d)for(var m in d)b+="&"+m+"="+d[m];var n=[f?f:"<a href="http://csi.gstatic.com/csi">http://csi.gstatic.com/csi</a>","?v=3","&s="+(window.jstiming.sn?window.jstiming.sn:"writely")+"&action=",<a href="http://a.name">a.name</a>,i.length?"&it="+i.join(",")+b:b,"&rt=",l.join(",")].join(""),g=new Image,o=window.jstiming.c++;window.jstiming.a[o]=g;g.onload=g.onerror=function(){delete window.jstiming.a[o]};g.src=n;g=null;return n}};

    <a href="http://window.jstiming.load.name">window.jstiming.load.name</a> = 'published';
    
    
    var urchinPage = "/View";

    
    function getXHR() {
      if (typeof XMLHttpRequest != "undefined") {
        return new XMLHttpRequest();
      }
      try { return new ActiveXObject("Msxml2.XMLHTTP.6.0") } catch(e) {}
      try { return new ActiveXObject("Msxml2.XMLHTTP.3.0") } catch(e) {}
      try { return new ActiveXObject("Msxml2.XMLHTTP") } catch(e) {}
      try { return new ActiveXObject("Microsoft.XMLHTTP") } catch(e) {}
      return null;
    }

    function reportAbuse() {
      var req = getXHR();
      if (req) {
        
          var docid = 'ddttqqr8_8fzbvxpcv';
          var posttoken = 'PGDTiSIBAAA.Rf_8j1lfrKTTOliyMGmpGutgBtr_ZBvYOxg1iqweRvs.b81GOEGKS8IEE4WT7V8_Vg';
        
        req.onreadystatechange = function() {
          try {
            if (req.readyState == 4 && req.status == 200) {
              var button = document.getElementById("report-abuse-button");
              button.value = 'Thank you!';
              button.disabled = true;
            }
          } catch (ex) {
            
          }
        }
        try {
          req.open('POST', 'MiscCommands', true);
          req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
          req.send('command=report_abuse&abuseDoc=' + encodeURIComponent(docid) +
                   '&POST_TOKEN=' + encodeURIComponent(posttoken));
        } catch (ex) {
          
        }
      }
    }
  --></script>


<div style="font-family: Helvetica; font-size: 14px; color: black; text-align: left; "><br class="webkit-block-placeholder"></div></body></html>