• fanzha02's avatar
    cmd/internal/obj/arm64: fix assemble VLD1/VST1 bug · cafb36bf
    fanzha02 authored
    The current code misassembles VLD1/VST1 instruction with non-zero
    offset. The offset is dropped silently without any error message.
    The cause of the misassembling is the current code treats argument
    (Rn)(Rm) as ZOREG type.
    
    The fix changes the matching rules and considers (Rn)(Rm) as ROFF
    type. The fix will report error information when assembles VLD1/VST1
    (R8)(R13), [V1.16B].
    The fix enables the ARM64Errors test.
    
    Fixes #23448
    
    Change-Id: I3dd518b91e9960131ffb8efcb685cb8df84b70eb
    Reviewed-on: https://go-review.googlesource.com/87956Reviewed-by: default avatarCherry Zhang <cherryyz@google.com>
    Run-TryBot: Cherry Zhang <cherryyz@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    cafb36bf
asm7.go 118 KB