Unknown register name 'q0' in asm
armv7, build, cpu-registers, ios, ios7
Solution
try changing in neon_matrix_impl.c and mat4.c `#if defined(ARM_NEON)` to `#if defined(_ARM_ARCH_7)`
Problem
I'm trying to build ios project for `$(ARCHS_STANDARD_32_BIT)` architecture - `armv7` for the latest iOS (iOS 7.0) and I've got the following error: ``` Unknown register name 'q0' in asm ``` in function ``` static void neon_asm_mat4_vec4_mul(const float* __restrict m, const int* __restrict v, int* __restrict output) { asm volatile ( // Store m & v - avoiding q4-q7 which need to be preserved - q0 = result "vldmia %1, { q8-q11 } \n\t" // q8-q11 = m "vldmia %2, { q1 } \n\t" // q1 = v // Convert v to floats "vcvt.f32.s32 q1, q1 \n\t" // result = first column of A x V.x "vmul.f32 q0, q8, d2[0] \n\t" // result += second column of A x V.y "vmla.f32 q0, q9, d2[1] \n\t" // result += third column of A x V.z "vmla.f32 q0, q10, d3[0] \n\t" // result += last column of A x V.w "vmla.f32 q0, q11, d3[1] \n\t" // convert to integer "vcvt.s32.f32 q0, q0 \n\t" // output = result registers "vstmia %0, { q0 } \n\t" : // no output : "r" (output), "r" (m), "r" (v) // input - note *value* of pointer doesn't change : "memory", "q0", "q1", "q2", "q3", "q8", "q9", "q10", "q11" //clobber ); } ``` Could you please help me to either update my code so it can be built for the latest hardware or simply configure build settings differently. I'm new to iOS development, so I'm kind of lost...