I was trying to add some asm code in ko module, simply:
asm volatile("vpush {d8}")
Error occurs while compiling:
Error: selected processor does not support ARM mode `vpush {d8}'
Is this expected? Thanks.
Floating points are not used in kernel development in general. Not every hardware supports FP, some platforms may have advanced power features and can turn on and off FP unit at times. Handling all these is quite cumbersome and you can always find another way to solve your issue.
Robert Love's "Linux Kernel Development"
No (Easy) Use of Floating Point
... Using a floating point inside the kernel requires manually saving and restoring the floating point registers, among other possible chores. The short answer is: Don’t do it! Except in the rare cases, no floating-point operations are in the kernel.
And more... https://stackoverflow.com/a/13886805/1163019
It is that your compiler invocation doesn't specify any mfpu directives in compliance to above, so you get that error message.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With