[llvm-commits] CVS: llvm-www/safecode/index.html

John Criswell criswell at cs.uiuc.edu
Thu Oct 1 16:28:07 PDT 2009



Changes in directory llvm-www/safecode:

index.html updated: 1.24 -> 1.25
---
Log message:

Commit file that is actually seen when accessing the SAFECode web site.


---
Diffs of the changes:  (+46 -14)

 index.html |   60 ++++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 46 insertions(+), 14 deletions(-)


Index: llvm-www/safecode/index.html
diff -u llvm-www/safecode/index.html:1.24 llvm-www/safecode/index.html:1.25
--- llvm-www/safecode/index.html:1.24	Fri Nov 18 16:21:34 2005
+++ llvm-www/safecode/index.html	Thu Oct  1 18:27:17 2009
@@ -13,18 +13,39 @@
 
 <H2>Static Analysis For safe Execution of Code</H2>
 
-<p>The purpose of the SAFECode project is to enable program safety without
-runtime checks and garbage collection, through 100% or near-100% static
-enforcement of program safety properties. SAFECode defines a code
-representation with minimal semantic restrictions designed to enable static
-enforcement of safety, using aggressive compiler techniques developed in this
-project.</p>
+<p>SAFECode project aims at providing
+memory safety guarantees to programs written in unsafe languages like
+C and C++.
+
+<p> As a part of this project, we developed a relatively simple
+compilation strategy that for standard C programs guarantees sound
+semantics for an aggressive interprocedural pointer analysis (or
+simpler ones), a call graph, and type information for a subset of
+memory. These provide the foundation for sophisticated static analyses
+to be applied to such programs with a guarantee of soundness. Our work
+builds on a previously published transformation called Automatic Pool
+Allocation to ensure that hard-to-detect memory errors (dangling pointer
+references and certain array bounds errors) cannot invalidate the call
+graph, points-to information or type information. A technical report
+on this work is available from <a
+href="http://llvm.cs.uiuc.edu/pubs/2005-11-SAFECodeTR.html"> here </a>
+ <br>
+
+<p>Second, we developed a backwards-compatible run-time array bounds
+checking solution that has very low overhead. More information on this
+work is available from 
+<a
+href="http://llvm.org/pubs/2006-05-24-SAFECode-BoundsCheck.html"> here
+</a><br>
+
+<p>Finally, we also developed a novel technique that can detect dangling
+pointer errors (accesses to freed memory) with low over head in some
+applications. More information on this
+work is available <a href="http://llvm.cs.uiuc.edu/~dhurjati/d-dsn06.pdf"> here
+</a>
 
+</p>
 
-<H3><a href="http://llvm.cs.uiuc.edu/pubs/2005-11-SAFECodeTR.html">
-Accompanying Technical Report
-of our PLDI Submission</a>: Enforcing Alias Analysis for Weakly Typed Languages.
-</H3>
 
 <H3>Project Members</H3>
 
@@ -45,6 +66,17 @@
 <H3> Publications</H3> 
 
 <ul>
+  <li>
+      "<a href="http://llvm.cs.uiuc.edu/~dhurjati/d-dsn06.pdf">
+      Efficiently Detecting All Dangling Pointer Uses in Production
+      Servers </a>" <br>
+      Dinakar Dhurjati and Vikram Adve. DSN 2006. 
+      
+  <li> "<a href="http://llvm.org/pubs/2006-05-24-SAFECode-BoundsCheck.html"> Backwards-Compatible Array Bounds Checking for C with Very Low
+      Overhead </a>"<br>
+      Dinakar Dhurjati and Vikram Adve. ICSE 2006. 
+
+
   <li>  "<a href="http://llvm.cs.uiuc.edu/pubs/2005-11-SAFECodeTR.html"> Enforcing Alias Analysis for Weakly Typed Languages </a>"
   <br>
   Dinakar dhurjati, Sumant Kowshik, and Vikram Adve. Technical Report
@@ -55,15 +87,15 @@
     Dhurjati, Sumant Kowshik, Vikram Adve and Chris Lattner. <a
     href="http://www.acm.org/tecs/"> <i>ACM Transactions in
     Embedded Computing Systems (TECS) </i></a>, February 2005.  </li>
-  <li><a
+  <li> "<a
   href="http://llvm.cs.uiuc.edu/pubs/2003-05-05-LCTES03-CodeSafety.html">Memory
-  Safety without Runtime Checks or Garbage Collection for Embedded Systems</a>
+  Safety without Runtime Checks or Garbage Collection for Embedded Systems</a>"
   <br>
   Dinakar Dhurjati, Sumant Kowshik, Vikram Adve and Chris Lattner. LCTES
   2003.</li>
-  <li><a
+  <li>"<a
   href="http://llvm.cs.uiuc.edu/pubs/2002-08-08-CASES02-ControlC.html">Ensuring
-  Code Safety without Runtime Checks for Real Time Control Systems</a><br>
+  Code Safety without Runtime Checks for Real Time Control Systems</a>"<br>
   Sumant Kowshik, Dinakar Dhurjati, Vikram Adve. CASES 2002.</li>
 </ul>      
 






More information about the llvm-commits mailing list