I'm trying to access ARM/Thumb FEAT_FHM vfmal instructions with the GNU tool chains, without success. With every combination of flags I try, I'm getting output like this from the compiler:
asmtest.S:50: Error: selected processor does not support `vfmal.f16 d0,s1,s2' in ARM modeasmtest.S:51: Error: selected processor does not support `vfmal.f16 q3,d4,d5' in ARM modeasmtest.S:57: Error: selected processor does not support `vfmal.f16 d6,s7,s8[1]' in ARM modeasmtest.S:58: Error: selected processor does not support `vfmal.f16 q9,d10,d11[0]' in ARM modeasmtest.S:64: Error: selected processor does not support `vfmsl.f16 d0,s1,s2' in ARM modeasmtest.S:65: Error: selected processor does not support `vfmsl.f16 q3,d4,d5' in ARM modeasmtest.S:71: Error: selected processor does not support `vfmsl.f16 d6,s7,s8[1]' in ARM modeasmtest.S:72: Error: selected processor does not support `vfmsl.f16 q9,d10,d11[0]' in ARM mode
What options do I need to set for these instructions to be enabled? And if I encounter a similar problem in future with other instructions, what is the process to use to find the exact flag combinations that allow instructions to be accessed?
Ideally, I would like to be able to disable this check altogether and just have the compiler do what I ask without question. Is this possible?
Thanks.
Ok, I need to use:
-Wa,-march=armv8.4-a+fp16
To get this down to the assember I think.