Hi,
This is Ashok from SASKEN communication Technologies, we were working on VP8 decoder porting on cortex A8 and in the code there are some functions like
#if HAVE_ARMV7
void vp8_push_neon(INT64 *store);
void vp8_pop_neon(INT64 *store);
#endif
I would like know whether this code is written for ARM7 and if so then how to include them in our project and also can we make use of them for cortex A8.
Also I would like to know is there any other assembly functions already written for ARM which we can use directly in our project. Because now I have to optimize the code for higher resolution like VGA, D1, 720P…..
Thanks & Regards,
Ashok K H
| Sasken Communication Technologies Limited | Senior Software Engineer| Semiconductor Solutions Group |
Tel: +91-20-6641 8558| Mob: 91-97301 40357 | ash...@sasken.com
The ARM optimization code are under vp8/common/arm and
vp8/decoder/arm. If HAVE_ARMV6 is on, it calls ARMV6 functions, and if
HAVE_ARMV7 is on, it calls NEON functions (you could tell it easily
since they all have "neon" in their name).
Regarding to your question on
#if HAVE_ARMV7
void vp8_push_neon(INT64 *store);
void vp8_pop_neon(INT64 *store);
#endif
this code is written for ARM7 NEON. For ARM NEON, d8-d15 are
callee-saved registers. vp8_push_neon() saves d8-d15 values before
going into decoding, and vp8_pop_neon() restores those saved values
after decoding is done. The prevents problem when these registers are
used in user application and their values need to be preserved before
and after the decoding. For example, if you measure time before and
after the decoding for testing performance, the beginning time needs
to be preserved, which is floating-point number and can be in d8-d15.
Therefore, d8-d15 values have to be stored to make it right.
Once you configure using armv7 target (for example: armv7-linux-gcc),
HAVE_ARMV7 is on and this code will be included in your build.
Please let us know if you have more questions.
Yunqing
> --
> You received this message because you are subscribed to the Google Groups
> "Application Developers" group.
> To post to this group, send email to apps-...@webmproject.org.
> To unsubscribe from this group, send email to
> apps-devel+...@webmproject.org.
> For more options, visit this group at
> http://groups.google.com/a/webmproject.org/group/apps-devel/?hl=en.
>