[dev.ssa] cmd/compile/internal/ssa: implement multiplies

Use width-and-signed-specific multiply opcodes.
Implement OMUL.
A few other cleanups.

Fixes #11467

Change-Id: Ib0fe80a1a9b7208dbb8a2b6b652a478847f5d244
Reviewed-on: https://go-review.googlesource.com/12540
Reviewed-by: Josh Bleecher Snyder <josharian@gmail.com>
This commit is contained in:
Keith Randall 2015-07-22 13:46:15 -07:00
parent d5297f7261
commit be1eb57a8b
8 changed files with 487 additions and 50 deletions

View file

@ -29,7 +29,15 @@ var genericOps = []opData{
{name: "Sub64U"},
// TODO: Sub32F, Sub64F, Sub64C, Sub128C
{name: "Mul"}, // arg0 * arg1
{name: "Mul8"}, // arg0 * arg1
{name: "Mul16"},
{name: "Mul32"},
{name: "Mul64"},
{name: "Mul8U"},
{name: "Mul16U"},
{name: "Mul32U"},
{name: "Mul64U"},
{name: "MulPtr"}, // MulPtr is used for address calculations
{name: "Lsh8"}, // arg0 << arg1
{name: "Lsh16"},