]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/internal/obj/arm: fix wrong encoding of MULBB
authorBen Shi <powerman1st@163.com>
Fri, 23 Jun 2017 08:05:37 +0000 (08:05 +0000)
committerCherry Zhang <cherryyz@google.com>
Fri, 23 Jun 2017 18:08:20 +0000 (18:08 +0000)
"MULBB R1, R2, R3" is encoded to 0xe163f182, which should be
0xe1630182.

This patch fix it.

fix #20764

Change-Id: I9d3c3ffa40ecde86638e5e083eacc67578caebf4
Reviewed-on: https://go-review.googlesource.com/46491
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/asm/internal/asm/testdata/arm.s
src/cmd/internal/obj/arm/asm5.go

index e5ad86cdc2e5b51ef7c4d4423156f8ab2b1f1b7b..8f743e7bfa6670ccf5cbad3f02b1e54602ad6758 100644 (file)
@@ -975,7 +975,7 @@ jmp_label_3:
        MULL    R1, R2, (R4, R3)     // 9231c4e0
        MULL.S  R1, R2, (R4, R3)     // 9231d4e0
        MMUL    R1, R2, R3           // 12f153e7
-       MULBB   R1, R2, R3           // 82f163e1
+       MULBB   R1, R2, R3           // 820163e1
        MULWB   R1, R2, R3           // a20123e1
        MULWT   R1, R2, R3           // e20123e1
 
index 6cb6072769191253affa6f7738dfd5747deac828..0836a7fa4eaf2f358d7c55a9061ca25ddee18cbf 100644 (file)
@@ -2866,7 +2866,7 @@ func (c *ctxt5) oprrr(p *obj.Prog, a obj.As, sc int) uint32 {
                return o&(0xf<<28) | 0x12<<20 | 0xa<<4
 
        case AMULBB:
-               return o&(0xf<<28) | 0x16<<20 | 0xf<<12 | 0x8<<4
+               return o&(0xf<<28) | 0x16<<20 | 0x8<<4
 
        case AMULAWT:
                return o&(0xf<<28) | 0x12<<20 | 0xc<<4