<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18828">
<STYLE>@font-face {
        font-family: 宋体;
}
@font-face {
        font-family: Verdana;
}
@font-face {
        font-family: @宋体;
}
@page Section1 {size: 595.3pt 841.9pt; margin: 72.0pt 90.0pt 72.0pt 90.0pt; layout-grid: 15.6pt; }
P.MsoNormal {
        TEXT-JUSTIFY: inter-ideograph; TEXT-ALIGN: justify; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; FONT-SIZE: 10.5pt
}
LI.MsoNormal {
        TEXT-JUSTIFY: inter-ideograph; TEXT-ALIGN: justify; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; FONT-SIZE: 10.5pt
}
DIV.MsoNormal {
        TEXT-JUSTIFY: inter-ideograph; TEXT-ALIGN: justify; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; FONT-SIZE: 10.5pt
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
        COLOR: purple; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
        COLOR: purple; TEXT-DECORATION: underline
}
SPAN.EmailStyle17 {
        FONT-STYLE: normal; FONT-FAMILY: Verdana; COLOR: windowtext; FONT-WEIGHT: normal; TEXT-DECORATION: none; mso-style-type: personal-compose
}
DIV.Section1 {
        page: Section1
}
UNKNOWN {
        FONT-SIZE: 10pt
}
BLOCKQUOTE {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; MARGIN-LEFT: 2em
}
OL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
UL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
</STYLE>
</HEAD>
<BODY style="MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt">
<DIV><FONT color=#000080 size=2 face=Verdana>
<DIV><FONT size=2 face=Verdana>Hi, dear LLVMers</FONT></DIV>
<DIV> </DIV>
<DIV style="TEXT-INDENT: 2em">I am Qiuping Yi. I am interested in John's SoC 
project idea, developing </DIV>
<DIV>Clang's support for detecting undefined behaviors in C/C++, 
and hope John</DIV>
<DIV> to be my mentor. </DIV>
<DIV style="TEXT-INDENT: 2em"> </DIV>
<DIV style="TEXT-INDENT: 2em">I wish to implement detecting some undefined 
behaivors ranging from </DIV>
<DIV>easy (such as detecting divide by zero) to rather 
troublesome ones </DIV>
<DIV>(such as detecting references to out-of-scope automatic 
variables). </DIV>
<DIV style="TEXT-INDENT: 2em"> </DIV>
<DIV style="TEXT-INDENT: 2em">I know well about C/C++,  and I major 
in program analysis and verification. </DIV>
<DIV>Now I am a grade-two master student of Institute of Software Chinese </DIV>
<DIV>Academy of Sciences, Beijing, China. I always pay close attention to 
many </DIV>
<DIV>compiler optimization technologies. Now I also attend another project 
</DIV>
<DIV>based on LLVM, in which I need to implement detecting whether the 
subscript</DIV>
<DIV> is out of the bounds of arrays.</DIV>
<DIV style="TEXT-INDENT: 2em"> </DIV>
<DIV style="TEXT-INDENT: 2em">I hope I can have a chance to make some 
contribution to LLVM and Clang.</DIV>
<DIV style="TEXT-INDENT: 2em"> </DIV>
<DIV>Qiuping Yi</DIV></FONT></DIV>
<DIV><FONT color=#000080 size=2 face=Verdana></FONT> </DIV>
<DIV><FONT color=#000080 size=2 face=Verdana></FONT> </DIV>
<DIV><FONT color=#c0c0c0 size=2 face=Verdana>2010-03-25 </FONT></DIV><FONT 
color=#000080 size=2 face=Verdana>
<HR style="WIDTH: 100px" align=left color=#b5c4df SIZE=1>
</FONT>
<DIV><FONT color=#c0c0c0 size=2 face=Verdana><SPAN>yiqiuping1986</SPAN> 
</FONT></DIV>
<HR color=#b5c4df SIZE=1>

<DIV><FONT size=2 face=Verdana><STRONG>发件人:</STRONG> John Regehr </FONT></DIV>
<DIV><FONT size=2 face=Verdana><STRONG>发送时间:</STRONG> 2010-03-23  08:43:21 
</FONT></DIV>
<DIV><FONT size=2 face=Verdana><STRONG>收件人:</STRONG> llvmdev </FONT></DIV>
<DIV><FONT size=2 face=Verdana><STRONG>抄送:</STRONG> </FONT></DIV>
<DIV><FONT size=2 face=Verdana><STRONG>主题:</STRONG> [LLVMdev] Summer of Code 
idea -- detecting undefined behavior </FONT></DIV>
<DIV><FONT size=2 face=Verdana></FONT> </DIV>
<DIV><FONT size=2 face=Verdana>
<DIV>Is anyone interested in a SoC project to further develop Clang's support </DIV>
<DIV>for detecting undefined behaviors in C/C++?</DIV>
<DIV></DIV>
<DIV>This is actually a collection of many smaller projects ranging from very </DIV>
<DIV>easy (detecting divide by zero) to rather nasty (detecting references to </DIV>
<DIV>out-of-scope automatic variables).</DIV>
<DIV></DIV>
<DIV>If someone does this, I'm happy to help mentor, provide test cases, etc.</DIV>
<DIV></DIV>
<DIV>If done well, this would be a relatively high-impact project.  It would </DIV>
<DIV>catch more errors than valgrind, be faster, and provide much better error </DIV>
<DIV>messages.</DIV>
<DIV></DIV>
<DIV>John Regehr</DIV>
<DIV>_______________________________________________</DIV>
<DIV>LLVM Developers mailing list</DIV>
<DIV>LLVMdev@cs.uiuc.edu         http://llvm.cs.uiuc.edu</DIV>
<DIV>http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</DIV></FONT></DIV></BODY></HTML>