Search code examples
androidassemblyandroid-ndkarmandroid-ndk-r5

Illegal assembly instructions on android: VLD2


I am trying to use an assembly optimized version of a third party library in an android application. Everything compiles and links fine, but I am crashing on a specific assembly instruction : vld2.8 {d8,d10}, [r6, :128]! From what I've read, this instruction should be compatible with the device I'm using (Galaxy Tab 10.1), but I receive a SIGILL signal: Illegal instruction.

Anyone has encounter this before?

Jean-Simon


Solution

  • Galaxy Tab 10.1 has Tegra2 CPU which has no NEON unit. So assembly code you are trying is not compatible with your device. (vld2.8 is one of NEON SIMD instructions).