用 str 替换 stp 的正确方法是什么?

What's the right way to replace stp by str?

出于某些原因,我需要将 stp 指令替换为 str:

旧:

stp q0, q0, [dst, -32]

新:

str q0, [dst, -32]
str q0, [dst, -24]

str q0, [dst, -24]
str q0, [dst, -32]

这两个命令我都试过了,但是都会在某处以段错误结束。哪里出错了?

q0是一个128位的寄存器,即16个字节,所以要

str q0, [dst, -32]
str q0, [dst, -16]

反之亦然(如果您愿意,应该不会产生任何影响)。

就目前而言,您将它们重叠,并保留最后 8 个字节未初始化。