[cfe-commits] r169207 - /cfe/trunk/docs/UsersManual.html

Nuno Lopes nunoplopes at sapo.pt
Thu Dec 6 14:38:14 PST 2012


Hi,

(trying to catch up with old emails..)
Thanks for documenting this! Some comments inline.


> Author: rsmith
> Date: Mon Dec  3 20:48:16 2012
> New Revision: 169207
>
> URL: http://llvm.org/viewvc/llvm-project?rev=169207&view=rev
> Log:
> Document the existence of -fsanitize=bounds.
>
> Modified:
>    cfe/trunk/docs/UsersManual.html
>
> Modified: cfe/trunk/docs/UsersManual.html
> URL: 
> http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/UsersManual.html?rev=169207&r1=169206&r2=169207&view=diff
> ==============================================================================
> --- cfe/trunk/docs/UsersManual.html (original)
> +++ cfe/trunk/docs/UsersManual.html Mon Dec  3 20:48:16 2012
> @@ -896,8 +896,8 @@
> <li id="opt_fsanitize_undefined"><tt>-fsanitize=undefined</tt>:
>     Fast and compatible undefined behavior checker.  Enables the undefined 
> behavior
>     checks that have small runtime cost and no impact on address space 
> layout
> -    or ABI.  This includes all of the checks listed below other than 
> unsigned
> -    integer overflow.</li>
> +    or ABI.  This includes all of the checks listed below other than
> +    <tt>unsigned-integer-overflow</tt> and <tt>bounds</tt>.</li>
> </ul>

I think that '-fsanitize=undefined' does include '-fsanitize=bounds'.


> @@ -905,6 +905,9 @@
> <ul>
> <li id="opt_fsanitize_alignment"><tt>-fsanitize=alignment</tt>:
>     Use of a misaligned pointer or creation of a misaligned 
> reference.</li>
> +<li id="opt_fsanitize_bounds"><tt>-fsanitize=bounds</tt>:
> +    Out of bounds array indexing, in cases where the array bound can be
> +    statically determined.</li>

It can do a bit more than checking arrays with static bounds. E.g.,
a = malloc(x * 4);
a[42] = 3;

This acessed is instrumented. And pointer arithmetic is also supported.
Not sure how to rephrase it, though.

Nuno 




More information about the cfe-commits mailing list