ppc: dsputil: do unaligned block accesses correctly
authorMans Rullgard <mans@mansr.com>
Fri, 27 Apr 2012 01:46:14 +0000 (02:46 +0100)
committerMans Rullgard <mans@mansr.com>
Mon, 30 Apr 2012 23:21:30 +0000 (00:21 +0100)
commit4c387c7070e24fa1d1c6397492fef9e46f9bf7aa
treedc06c0e7f772dd5c66da105db71520a46a40f9b0
parentc75eca9d37d692dcbd2c80af0f37e33b10ac333b
ppc: dsputil: do unaligned block accesses correctly

To load unaligned vector data in the usual way, explicit vec_ld()
should be used rather than dereferencing a pointer to a vector type.
When the VSX extension is enabled, gcc may compile vector pointer
dereferences using the VSX lxvw4x instruction instead of the lvx
instruction typically used with Altivec/VMX.  As the behaviour of
these instructions with unaligned addresses differs, it is important
that only lvx is used here.

Signed-off-by: Mans Rullgard <mans@mansr.com>
libavcodec/ppc/dsputil_altivec.c
libavcodec/ppc/int_altivec.c