Closed GoogleCodeExporter closed 8 years ago
The intent was that each functional area disables assembly (other CPUs too) for
different reasons, but should not interact.
scale_row.h, rotate_row.h and row.h are really intended to be internal and not
to interact.
planar_functions should not really need to dsiable assembly. It exposes one
function if I recall.
row.h is the most correct version. I'll see if that version can be used for
all headers.
Original comment by fbarch...@chromium.org
on 27 Jul 2015 at 5:30
the row.h one covers the most common case and should be considered correct.
but its currently doing
#if defined(__pnacl__) || defined(__CLR_VER) || defined(COVERAGE_ENABLED) || \
defined(TARGET_IPHONE_SIMULATOR) || \
(defined(__i386__) && !defined(__SSE2__))
#define LIBYUV_DISABLE_X86
#endif
technically there is a bit of X86 assembly that could work without SSE2 but its
not worth worrying about, and this keeps the ifdefs simplier.
the coverage and iphone are build system specific, and I propose removing them.
if iphone still needs ifdefs they can be reintroduced in a way that is build
system agnostic.
#if defined(__pnacl__) || defined(__CLR_VER) || (defined(__i386__) &&
!defined(__SSE2__))
#define LIBYUV_DISABLE_X86
#endif
Original comment by fbarch...@chromium.org
on 27 Jul 2015 at 7:04
Fixed in r1453
todo review NEON disables in same way.
Original comment by fbarch...@chromium.org
on 27 Jul 2015 at 7:50
Original comment by fbarch...@chromium.org
on 27 Jul 2015 at 7:50
Original issue reported on code.google.com by
jz...@google.com
on 25 Jul 2015 at 2:00