Commit 871177df authored by Keith Randall's avatar Keith Randall

8a/8l: add PCMPEQB and PMOVMSKB to 386.

Used by CL 8056043 for fast string equals.

R=bradfitz
CC=golang-dev
https://golang.org/cl/8102044
parent 47a54ab2
...@@ -760,10 +760,12 @@ struct ...@@ -760,10 +760,12 @@ struct
"ORPS", LTYPE3, AORPS, "ORPS", LTYPE3, AORPS,
"PADDQ", LTYPE3, APADDQ, "PADDQ", LTYPE3, APADDQ,
"PAND", LTYPE3, APAND, "PAND", LTYPE3, APAND,
"PCMPEQB", LTYPE3, APCMPEQB,
"PMAXSW", LTYPE3, APMAXSW, "PMAXSW", LTYPE3, APMAXSW,
"PMAXUB", LTYPE3, APMAXUB, "PMAXUB", LTYPE3, APMAXUB,
"PMINSW", LTYPE3, APMINSW, "PMINSW", LTYPE3, APMINSW,
"PMINUB", LTYPE3, APMINUB, "PMINUB", LTYPE3, APMINUB,
"PMOVMSKB", LTYPE3, APMOVMSKB,
"PSADBW", LTYPE3, APSADBW, "PSADBW", LTYPE3, APSADBW,
"PSHUFB", LTYPE3, APSHUFB, "PSHUFB", LTYPE3, APSHUFB,
"PSUBB", LTYPE3, APSUBB, "PSUBB", LTYPE3, APSUBB,
......
...@@ -534,10 +534,12 @@ enum as ...@@ -534,10 +534,12 @@ enum as
AORPS, AORPS,
APADDQ, APADDQ,
APAND, APAND,
APCMPEQB,
APMAXSW, APMAXSW,
APMAXUB, APMAXUB,
APMINSW, APMINSW,
APMINUB, APMINUB,
APMOVMSKB,
APSADBW, APSADBW,
APSUBB, APSUBB,
APSUBL, APSUBL,
......
...@@ -364,6 +364,12 @@ uchar ysvrs[] = ...@@ -364,6 +364,12 @@ uchar ysvrs[] =
Ym, Ynone, Zm_o, 2, Ym, Ynone, Zm_o, 2,
0 0
}; };
uchar ymskb[] =
{
Yxr, Yrl, Zm_r_xm, 2,
Ymr, Yrl, Zm_r_xm, 1,
0
};
uchar yxm[] = uchar yxm[] =
{ {
Yxm, Yxr, Zm_r_xm, 1, Yxm, Yxr, Zm_r_xm, 1,
...@@ -950,10 +956,12 @@ Optab optab[] = ...@@ -950,10 +956,12 @@ Optab optab[] =
{ AORPS, yxm, Pm, 0x56 }, { AORPS, yxm, Pm, 0x56 },
{ APADDQ, yxm, Pe, 0xd4 }, { APADDQ, yxm, Pe, 0xd4 },
{ APAND, yxm, Pe, 0xdb }, { APAND, yxm, Pe, 0xdb },
{ APCMPEQB, yxmq, Pe ,0x74 },
{ APMAXSW, yxm, Pe, 0xee }, { APMAXSW, yxm, Pe, 0xee },
{ APMAXUB, yxm, Pe, 0xde }, { APMAXUB, yxm, Pe, 0xde },
{ APMINSW, yxm, Pe, 0xea }, { APMINSW, yxm, Pe, 0xea },
{ APMINUB, yxm, Pe, 0xda }, { APMINUB, yxm, Pe, 0xda },
{ APMOVMSKB, ymskb, Px, Pe,0xd7,0xd7 },
{ APSADBW, yxm, Pq, 0xf6 }, { APSADBW, yxm, Pq, 0xf6 },
{ APSUBB, yxm, Pe, 0xf8 }, { APSUBB, yxm, Pe, 0xf8 },
{ APSUBL, yxm, Pe, 0xfa }, { APSUBL, yxm, Pe, 0xfa },
......
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