[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