• Ben Shi's avatar
    cmd/internal/obj/arm: support new arm instructions · 75cb22cb
    Ben Shi authored
    There are two changes in this CL.
    
    1. Add new forms of MOVH/MOVHS/MOVHU.
       MOVHS R0<<0(R1), R2   // ldrsh
       MOVH  R0<<0(R1), R2   // ldrsh
       MOVHU R0<<0(R1), R2   // ldrh
       MOVHS R2, R5<<0(R1)   // strh
       MOVH  R2, R5<<0(R1)   // strh
       MOVHU R2, R5<<0(R1)   // strh
    
    2. Simpify "MVN $0xffffffaa, Rn" to "MOVW $0x55, Rn".
       It is originally assembled to two instructions.
       "MOVW offset(PC), R11"
       "MVN R11, Rn"
    
    Change-Id: I8e863dcfb2bd8f21a04c5d627fa7beec0afe65fb
    Reviewed-on: https://go-review.googlesource.com/53690
    Run-TryBot: Cherry Zhang <cherryyz@google.com>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    Reviewed-by: default avatarCherry Zhang <cherryyz@google.com>
    75cb22cb
asm5.go 77.2 KB