AArch64: V28 register mismangled as the stolen X28 register
Created by: zhoubot
It seems the instr_uses_reg(instr, dr_reg_stolen)
is not returning the correct result for instructions that use SIMD registers. Presumably there is a bug in the decoder.
As a result, I've found the unessessary mangles in the DynamoRIO AArch64 7.0.0-RC1 release:
fmov d28, d12
is manged to
str x1, [x28,#8]
mov x1, x28
ldr x28, [x28,#48]
fmov d28, d12
str x28, [x1,#48]
mov x28, x1
ldr x1, [x28,#8]