WangYongHai / libyuv

Automatically exported from code.google.com/p/libyuv
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Port Neon to NaCL #333

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Neon is disabled when running on Arm - requires a code change to validate.

Original issue reported on code.google.com by fbarch...@chromium.org on 21 May 2014 at 2:00

GoogleCodeExporter commented 9 years ago
Documentation on the requirements
https://developer.chrome.com/native-client/reference/sandbox_internals/arm-32-bi
t-sandbox

example:
#if defined(__native_client__)
    "bic        %0, #0xc0000000                \n"
#endif
    "vld1.8     {q0}, [%0]!                    \n"

Original comment by fbarch...@chromium.org on 21 May 2014 at 2:05

GoogleCodeExporter commented 9 years ago
The M37 validator is required for vpadd instruction.  Suggest adding a version 
check.  Nacl team says:

There are several ways to do this:

#include "pp_macros.h"
which contains:
#define PPAPI_RELEASE 37

Run this utility in your makefile
$(NACL_SDK_ROOT)/tools/getos.py --sdk-version
which returns
37
And then assign that to a macro.

If you are choosing between SDKs yourself, then you already have that 
information and you can pass it to make as a variable assignment:
make SDK_VERSION=37
and then add CFLAGS += -DSDK_VERSION=$(SDK_VERSION)

Other ways include parsing:
  ~/private_svn/chrome/src/out/pepper_37/README
or
  naclsdk info pepper_XX

To get exact commit numbers if you need a change after a certain chrome commit.

Original comment by fbarch...@chromium.org on 24 Jun 2014 at 1:50

GoogleCodeExporter commented 9 years ago
r1019 checks version and enables neon for M37.

Original comment by fbarch...@chromium.org on 24 Jun 2014 at 10:28