I use "vld2q_f32" on an android mobile which cpu is "MT6765" or "MT6762", "bus error" occurs and my app crash.
My code as follows:
func()
{
float32x4x2_t vmm0;
...
vmm0 = vld2q_f32(ptr1);
vmm0 = vld2q_f32(ptr2);
vmm0 = vld2q_f32(ptr3);
vmm0 = vld2q_f32(ptr4);
}
when the first "vmm0 = vld2q_f32(ptr1);" comes, it's ok. But the second "vmm0 = vld2q_f32(ptr2);" comes, "bus error" occurs.
Amazing, I add a printf() line in front of vmm0 = vld2q_f32(ptr2); no error occurs !!! The whole program is ok. And other cpus with ARM kernel don't have this problem.
I am confused and ask help here, thanks.