From b46926bc8ad2fbf12e5cd0170b33bd762fd9c1f4 Mon Sep 17 00:00:00 2001 From: Cuong Manh Le Date: Wed, 21 Apr 2021 00:16:25 +0700 Subject: [PATCH] Fix wrong arm64 scaled register format Arm64 does not have scaled register format, casue snappy test failed for current go tip: $ go version go version devel go1.17-24875e3880 Tue Apr 20 15:14:05 2021 +0000 darwin/arm64 $ go test # github.com/golang/snappy ./encode_arm64.s:385: arm64 doesn't support scaled register format ./encode_arm64.s:675: arm64 doesn't support scaled register format asm: assembly of ./encode_arm64.s failed FAIL github.com/golang/snappy [build failed] See https://go-review.googlesource.com/c/go/+/289589 --- encode_arm64.s | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/encode_arm64.s b/encode_arm64.s index bf83667..f8d54ad 100644 --- a/encode_arm64.s +++ b/encode_arm64.s @@ -382,7 +382,7 @@ inner0: // if load32(src, s) != load32(src, candidate) { continue } break MOVW 0(R7), R3 - MOVW (R6)(R15*1), R4 + MOVW (R6)(R15), R4 CMPW R4, R3 BNE inner0 @@ -672,7 +672,7 @@ inlineEmitCopyEnd: MOVHU R3, 0(R17)(R11<<1) // if uint32(x>>8) == load32(src, candidate) { continue } - MOVW (R6)(R15*1), R4 + MOVW (R6)(R15), R4 CMPW R4, R14 BEQ inner1