Commit c3208842 authored by Ben Shi's avatar Ben Shi Committed by Cherry Zhang

test/codegen: add tests for multiplication-subtraction

This CL adds tests for armv7's MULS and arm64's MSUBW.

Change-Id: Id0fd5d26fd477e4ed14389b0d33cad930423eb5b
Reviewed-on: https://go-review.googlesource.com/c/141651
Run-TryBot: Ben Shi <powerman1st@163.com>
Reviewed-by: 's avatarCherry Zhang <cherryyz@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
parent 389e9427
...@@ -227,3 +227,16 @@ func MULA(a, b, c uint32) (uint32, uint32, uint32) { ...@@ -227,3 +227,16 @@ func MULA(a, b, c uint32) (uint32, uint32, uint32) {
r2 := b*64 + c r2 := b*64 + c
return r0, r1, r2 return r0, r1, r2
} }
func MULS(a, b, c uint32) (uint32, uint32, uint32) {
// arm/7:`MULS`,-`MUL\s`
// arm64:`MSUBW`,-`MULW`
r0 := c - a*b
// arm/7:`MULS`-`MUL\s`
// arm64:`MSUBW`,-`MULW`
r1 := a - c*79
// arm/7:`SUB`,-`MULS`-`MUL\s`
// arm64:`SUB`,-`MSUBW`,-`MULW`
r2 := c - b*64
return r0, r1, r2
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment