On 10/10/14 08:52, Ilya Enkovich wrote:

THanks, Jeff

With this code we remove user builtins calls coming from source code.
E.g.:

p2 = (int *)__bnd_init_ptr_bounds (p1); *p2 = 0;

which means p2 has value of p1 but has default bounds and following
store is unchecked.  These calls are important for instrumentation
but useless after instrumentation.  I don't think it is a part of
checker optimizer because it doesn't optimize instrumentation code.
Also this transformation is trivial enough for O0 and checker
optimizer works starting from O2.

Below is a version fixed according to Richard's comments.

Thanks, Ilya -- 2014-10-10  Ilya Enkovich  <ilya.enkov...@intel.com>

* tree-chkp.c (chkp_remove_useless_builtins): New. (chkp_execute):
Remove useless calls to Pointer Bounds Checker builtins.
Tests instrumentation are still needed. With some basic tests and instrumentation this will be OK.

I hate to be harping tests, but few developers are going to be familiar with the MPX and related infrastructure and those tests are critical to helping them know when they break something.

Similarly if the plan is to iterate on improving things, then those basic functionality tests will ultimately save time as you can smoke test before running larger benchmarks.


jeff

Reply via email to