btw, I've run SPEC (test data, C only) and it shows that out-of-line
instrumentation is 2x slower.
This is x86_64, but I doubt that ARM will be any different.
(second column is with out-of-line instrumentation, third is with regular
inline instrumentation)
400.perlbench, 9.79, 8.31, 0.85
401.bzip2, 19.00, 9.59, 0.50
403.gcc, 2.79, 2.64, 0.95
429.mcf, 4.92, 4.01, 0.82
445.gobmk, 37.30, 29.20, 0.78
456.hmmer, 10.60, 4.88, 0.46
458.sjeng, 9.63, 6.44, 0.67
462.libquantum, 0.16, 0.08, 0.52
464.h264ref, 56.50, 26.60, 0.47
433.milc, 21.70, 9.93, 0.46
470.lbm, 5.85, 3.00, 0.51
482.sphinx3, 3.55, 2.02, 0.57
--kcc
On Thu, Apr 17, 2014 at 12:45 PM, Konstantin Serebryany <
[email protected]> wrote:
> Meanwhile we've made the first step for "Out-of-line memory checks".
>
> http://llvm.org/viewvc/llvm-project?view=revision&revision=206387 and
> http://llvm.org/viewvc/llvm-project?view=revision&revision=206383
> introduce a new hidden flag "-mllvm
> -asan-instrumentation-with-call-threshold=N" which will use callbacks
> instead of inline checks
> when the function has more than N memory accesses.
> The plan is to set N to something like 10000 by default.
> We did it because we are desperate with
> http://llvm.org/bugs/show_bug.cgi?id=17409 and
> because the same thing will help us experimenting with kernel-asan
> (kasan has different and yet-unstable shadow mapping).
>
> --kcc
>
> On Mon, Mar 31, 2014 at 4:04 PM, Yuri Gribov <[email protected]> wrote:
> >> That will add some more complexity to the build system.
> >> E.g. __asan_read1&co will have to reside in a separate library.
> >
> > Yup.
> >
> >> You probably want to implement them in hand-written assembly, because
> >> otherwise we'll get the same bad code generated by the same compiler.
> >
> > Sure, that goes w/o saying.
> >
> >> Also, ARM calls do not save return address on stack, but store it in
> >> LR register - that's one less memory store on the fast path.
> >
> > +1
> >
> > -Y
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "address-sanitizer" group.
> > To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected].
> > For more options, visit https://groups.google.com/d/optout.
>
--
You received this message because you are subscribed to the Google Groups
"address-sanitizer" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.