• Michael Munday's avatar
    cmd/asm, cmd/internal/obj/s390x: add new s390x instructions for SSA · 43bdfa93
    Michael Munday authored
    This commit adds the following instructions to support the new SSA
    backend for s390x:
    
    32-bit operations:
    ADDW
    SUBW
    NEGW
    FNEGS
    
    Conditional moves:
    MOVDEQ
    MOVDGE
    MOVDGT
    MOVDLE
    MOVDLT
    MOVDNE
    
    Unordered branches (for floating point comparisons):
    BLEU
    BLTU
    
    Modulo operations:
    MODW
    MODWU
    MODD
    MODDU
    
    The modulo operations might be removed in a future commit because
    I'd like to change DIV to produce a tuple once the old backend is
    removed.
    
    This commit also removes uses of REGZERO from the assembler. They
    aren't necessary and R0 will be used as a GPR by SSA.
    
    Change-Id: I05756c1cbb74bf4a35fc492f8f0cd34b50763dc9
    Reviewed-on: https://go-review.googlesource.com/29075
    Run-TryBot: Michael Munday <munday@ca.ibm.com>
    Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
    TryBot-Result: Gobot Gobot <gobot@golang.org>
    43bdfa93
asmz.go 168 KB