我想在 armv8 NEON 内联汇编代码中实现 if 条件。
在 armv7 中,这可以通过像这样检查溢出位来实现:
VMRS r4, FPSCR
BIC r4, r4, #(1<<27)
VMSR FPSCR, r4
vtst.16 d30, d30, d30
vqadd.u16 d30, d30, d30
vmrs r4, FPSCR
tst r4, #(1<<27)
bne label1
但是我无法在 armv8 等效代码中实现这一点。似乎 SQADD 不会影响 FPSR 中的溢出位,或者我无法像这样检查它。是否有可能或者有更好的方法来跳过代码的长部分?
谢谢
最佳答案
Aarch64 中提供了相同的信息。你只需要更换:
VMSR r4, FPSCR
VMRS FPSCR, r4
经过:
MRS w4, FPSR
MSR FPSR, w4
关于if-statement - armv8 NEON 如果条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38145583/