From: Chris Lattner Date: Sun, 8 Feb 2009 20:41:34 +0000 (+0000) Subject: add another crazy idea :) X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0a5166cb0a69772c202f426b3af4cddd4995d818;p=clang add another crazy idea :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64092 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/www/get_involved.html b/www/get_involved.html index f18ebef48f..94268e82e6 100644 --- a/www/get_involved.html +++ b/www/get_involved.html @@ -82,12 +82,20 @@ of LLVM debug info (which the code generator turns into DWARF). The missing pieces are pretty minor at this point. -
  • Overflow detection: an interesting project would be to add a +
  • Overflow detection: an interesting project would be to add a -ftrapv compilation mode that causes -emit-llvm to generate overflow tests for all signed integer arithmetic operators, and call abort if they overflow. Overflow is undefined in C and hard for people to reason about. LLVM IR also has intrinsics for generating arithmetic with overflow checks directly.
  • +
  • Undefined behavior checking: similar to adding -ftrapv, codegen could +insert runtime checks for all sorts of different undefined behaviors, from +reading uninitialized variables, buffer overflows, and many other things. This +checking would be expensive, but the optimizers could eliminate many of the +checks in some cases, and it would be very interesting to test code in this mode +for certain crowds of people. Because the inserted code is coming from clang, +the "abort" message could be very detailed about exactly what went wrong.
  • +
  • Continue work on C++ support: Implementing all of C++ is a very big job, but there are lots of little pieces that can be picked off and implemented. See the C++ status report page to find out what is