watery01 / libyuv

Automatically exported from code.google.com/p/libyuv
0 stars 0 forks source link

Compute assembly coverage #133

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
libyuv aims for 100% of functions to be implemented in assembly.
Compute a converage percentage by finding how many have _C() and compare 
_SSSE3, _NEON, _MIPS against that.

Original issue reported on code.google.com by fbarch...@google.com on 25 Oct 2012 at 5:18

GoogleCodeExporter commented 9 years ago
Also should compute coverage of 'Any' and 'Unaligned'.

Original comment by fbarch...@chromium.org on 2 Nov 2012 at 6:02

GoogleCodeExporter commented 9 years ago
As a first step, it would help to have consistent naming convention:
FunctionRow_CPU

Original comment by fbarch...@chromium.org on 14 Nov 2012 at 11:31

GoogleCodeExporter commented 9 years ago
Arm (Neon) coverage is complete in general:
Neon: 95 functions
SSE: 93 functions (sse2 and/or ssse3)
Mips: 14 functions

findstr -s "#define.*HAS.*NEON" *.cc *.h
findstr -s "#define.*HAS.*SSE" *.cc *.h
findstr -s "#define.*HAS.*MIPS" *.cc *.h

The area of 'Effects' is least complete 9 of 16, but the missing ones dont lend 
themselves to Neon.
The area of conversions has more Neon variations than SSE because 24 bit and 
other variations are practical and large wins while a 2 pass function is 
comparable with SSE.

Original comment by fbarch...@google.com on 11 Jan 2013 at 2:24

GoogleCodeExporter commented 9 years ago

Original comment by fbarch...@google.com on 12 Jan 2013 at 12:03