Commit e6347659 authored by Russ Cox's avatar Russ Cox

cmd/asm: add amd64 HADDPD/HADDPS

Was part of #13822 but not in the first message, so I missed it.

Fixes #13822 again.

Change-Id: I775004fa8d47b6af293124605521ec396573e267
Reviewed-on: https://go-review.googlesource.com/18900
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: 's avatarBrad Fitzpatrick <bradfitz@golang.org>
parent 295ec4f6
...@@ -1878,39 +1878,39 @@ TEXT asmtest(SB),7,$0 ...@@ -1878,39 +1878,39 @@ TEXT asmtest(SB),7,$0
FXTRACT // d9f4 FXTRACT // d9f4
FYL2X // d9f1 FYL2X // d9f1
FYL2XP1 // d9f9 FYL2XP1 // d9f9
//TODO: HADDPD (BX), X2 // 660f7c13 HADDPD (BX), X2 // 660f7c13
//TODO: HADDPD (R11), X2 // 66410f7c13 HADDPD (R11), X2 // 66410f7c13
//TODO: HADDPD X2, X2 // 660f7cd2 HADDPD X2, X2 // 660f7cd2
//TODO: HADDPD X11, X2 // 66410f7cd3 HADDPD X11, X2 // 66410f7cd3
//TODO: HADDPD (BX), X11 // 66440f7c1b HADDPD (BX), X11 // 66440f7c1b
//TODO: HADDPD (R11), X11 // 66450f7c1b HADDPD (R11), X11 // 66450f7c1b
//TODO: HADDPD X2, X11 // 66440f7cda HADDPD X2, X11 // 66440f7cda
//TODO: HADDPD X11, X11 // 66450f7cdb HADDPD X11, X11 // 66450f7cdb
//TODO: HADDPS (BX), X2 // f20f7c13 HADDPS (BX), X2 // f20f7c13
//TODO: HADDPS (R11), X2 // f2410f7c13 HADDPS (R11), X2 // f2410f7c13
//TODO: HADDPS X2, X2 // f20f7cd2 HADDPS X2, X2 // f20f7cd2
//TODO: HADDPS X11, X2 // f2410f7cd3 HADDPS X11, X2 // f2410f7cd3
//TODO: HADDPS (BX), X11 // f2440f7c1b HADDPS (BX), X11 // f2440f7c1b
//TODO: HADDPS (R11), X11 // f2450f7c1b HADDPS (R11), X11 // f2450f7c1b
//TODO: HADDPS X2, X11 // f2440f7cda HADDPS X2, X11 // f2440f7cda
//TODO: HADDPS X11, X11 // f2450f7cdb HADDPS X11, X11 // f2450f7cdb
HLT // f4 HLT // f4
//TODO: HSUBPD (BX), X2 // 660f7d13 HSUBPD (BX), X2 // 660f7d13
//TODO: HSUBPD (R11), X2 // 66410f7d13 HSUBPD (R11), X2 // 66410f7d13
//TODO: HSUBPD X2, X2 // 660f7dd2 HSUBPD X2, X2 // 660f7dd2
//TODO: HSUBPD X11, X2 // 66410f7dd3 HSUBPD X11, X2 // 66410f7dd3
//TODO: HSUBPD (BX), X11 // 66440f7d1b HSUBPD (BX), X11 // 66440f7d1b
//TODO: HSUBPD (R11), X11 // 66450f7d1b HSUBPD (R11), X11 // 66450f7d1b
//TODO: HSUBPD X2, X11 // 66440f7dda HSUBPD X2, X11 // 66440f7dda
//TODO: HSUBPD X11, X11 // 66450f7ddb HSUBPD X11, X11 // 66450f7ddb
//TODO: HSUBPS (BX), X2 // f20f7d13 HSUBPS (BX), X2 // f20f7d13
//TODO: HSUBPS (R11), X2 // f2410f7d13 HSUBPS (R11), X2 // f2410f7d13
//TODO: HSUBPS X2, X2 // f20f7dd2 HSUBPS X2, X2 // f20f7dd2
//TODO: HSUBPS X11, X2 // f2410f7dd3 HSUBPS X11, X2 // f2410f7dd3
//TODO: HSUBPS (BX), X11 // f2440f7d1b HSUBPS (BX), X11 // f2440f7d1b
//TODO: HSUBPS (R11), X11 // f2450f7d1b HSUBPS (R11), X11 // f2450f7d1b
//TODO: HSUBPS X2, X11 // f2440f7dda HSUBPS X2, X11 // f2440f7dda
//TODO: HSUBPS X11, X11 // f2450f7ddb HSUBPS X11, X11 // f2450f7ddb
//TODO: ICEBP // f1 //TODO: ICEBP // f1
IDIVW (BX) // 66f73b IDIVW (BX) // 66f73b
IDIVW (R11) // 6641f73b IDIVW (R11) // 6641f73b
......
...@@ -89,7 +89,11 @@ const ( ...@@ -89,7 +89,11 @@ const (
ADIVL ADIVL
ADIVW ADIVW
AENTER AENTER
AHADDPD
AHADDPS
AHLT AHLT
AHSUBPD
AHSUBPS
AIDIVB AIDIVB
AIDIVL AIDIVL
AIDIVW AIDIVW
......
...@@ -57,7 +57,11 @@ var Anames = []string{ ...@@ -57,7 +57,11 @@ var Anames = []string{
"DIVL", "DIVL",
"DIVW", "DIVW",
"ENTER", "ENTER",
"HADDPD",
"HADDPS",
"HLT", "HLT",
"HSUBPD",
"HSUBPS",
"IDIVB", "IDIVB",
"IDIVL", "IDIVL",
"IDIVW", "IDIVW",
......
...@@ -1171,6 +1171,10 @@ var optab = ...@@ -1171,6 +1171,10 @@ var optab =
{AJPC, yjcond, Px, [23]uint8{0x7b, 0x8b}}, {AJPC, yjcond, Px, [23]uint8{0x7b, 0x8b}},
{AJPL, yjcond, Px, [23]uint8{0x79, 0x89}}, {AJPL, yjcond, Px, [23]uint8{0x79, 0x89}},
{AJPS, yjcond, Px, [23]uint8{0x7a, 0x8a}}, {AJPS, yjcond, Px, [23]uint8{0x7a, 0x8a}},
{AHADDPD, yxm, Pq, [23]uint8{0x7c}},
{AHADDPS, yxm, Pf2, [23]uint8{0x7c}},
{AHSUBPD, yxm, Pq, [23]uint8{0x7d}},
{AHSUBPS, yxm, Pf2, [23]uint8{0x7d}},
{ALAHF, ynone, Px, [23]uint8{0x9f}}, {ALAHF, ynone, Px, [23]uint8{0x9f}},
{ALARL, yml_rl, Pm, [23]uint8{0x02}}, {ALARL, yml_rl, Pm, [23]uint8{0x02}},
{ALARW, yml_rl, Pq, [23]uint8{0x02}}, {ALARW, yml_rl, Pq, [23]uint8{0x02}},
......
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