• Ard Biesheuvel's avatar
    ARM: vfp: Record VFP bounces as perf emulation faults · 87691776
    Ard Biesheuvel authored
    VFP 'bouncing' occurs when the VFP unit cannot complete the execution of
    a VFP instruction, either because it is not implemented at all, or
    because the values of the arguments are out of range for the hardware
    implementation, and the software needs to step in to complete the
    operation.
    
    To give some insight in how much certain programs rely on this bouncing,
    record the emulation of a VFP instruction in perf's emulation-faults
    counter.
    
    This can be used like so
    
      perf stat -e emulation-faults ./testfloat -all2
    
    and the output will be something like
    
     Performance counter stats for './testfloat -all2':
    
               259,277      emulation-faults:u
    
           6.846432176 seconds time elapsed
    Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
    Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
    87691776
vfpmodule.c 23.4 KB