aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/make_nm.cpp
diff options
context:
space:
mode:
authorMITSUNARI Shigeo <[email protected]>2016-07-17 16:22:02 +0900
committerMITSUNARI Shigeo <[email protected]>2016-07-17 16:22:02 +0900
commit2683062ec2d209a7e532cb1e0a03bfb440bc4f8d (patch)
tree6d9c28b39eaa59b7639f69e3d3b8e12b4de5eb04 /test/make_nm.cpp
parentc93ccdaa2bd9f2eae1c0c2a849c3cff6ec001f58 (diff)
downloadxbyak-2683062ec2d209a7e532cb1e0a03bfb440bc4f8d.tar.gz
xbyak-2683062ec2d209a7e532cb1e0a03bfb440bc4f8d.zip
add disp8N const
Diffstat (limited to 'test/make_nm.cpp')
-rw-r--r--test/make_nm.cpp85
1 files changed, 14 insertions, 71 deletions
diff --git a/test/make_nm.cpp b/test/make_nm.cpp
index 8c34609..d37d190 100644
--- a/test/make_nm.cpp
+++ b/test/make_nm.cpp
@@ -1437,22 +1437,21 @@ class Test {
const struct Tbl {
const char *name;
bool only_pd_ps;
- bool supportZMM;
} tbl[] = {
- { "add", false, true },
- { "sub", false, true },
- { "mul", false, true },
- { "div", false, true },
- { "max", false, true },
- { "min", false, true },
- { "and", true, true },
- { "andn", true, true },
- { "or", true, true },
- { "xor", true, true },
-
- { "addsub", true, false },
- { "hadd", true, false },
- { "hsub", true, false },
+ { "add", false },
+ { "sub", false },
+ { "mul", false },
+ { "div", false },
+ { "max", false },
+ { "min", false },
+ { "and", true },
+ { "andn", true },
+ { "or", true },
+ { "xor", true },
+
+ { "addsub", true },
+ { "hadd", true },
+ { "hsub", true },
};
for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
const struct Suf {
@@ -1473,8 +1472,6 @@ class Test {
if (!suf[j].supportYMM) continue;
put(p, YMM, YMM | MEM);
put(p, YMM, YMM, YMM | MEM);
- if (!tbl[i].supportZMM) continue;
- put(p, ZMM, ZMM, ZMM | MEM);
}
}
}
@@ -2009,60 +2006,6 @@ class Test {
put("vmaskmovps", MEM, XMM, XMM);
put("vmaskmovpd", MEM, XMM, XMM);
-
- put("vbroadcastf128", YMM, MEM);
- put("vbroadcasti128", YMM, MEM);
- put("vbroadcastsd", YMM|_YMM3, XMM|MEM);
- put("vbroadcastsd", ZMM, XMM|MEM);
- {
- const char *tbl[] = {
- "vbroadcastss",
- "vpbroadcastb",
- "vpbroadcastw",
- "vpbroadcastd",
- "vpbroadcastq",
- };
- for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
- put(tbl[i], XMM | YMM | ZMM, XMM|MEM);
- }
- }
-
- put("vinsertf128", YMM, YMM, XMM | MEM, IMM8);
- put("vinserti128", YMM, YMM, XMM | MEM, IMM8);
- put("vperm2f128", YMM, YMM, YMM | MEM, IMM8);
- put("vperm2i128", YMM, YMM, YMM | MEM, IMM8);
-
- {
- const char *tbl[] = {
- "vpmaskmovd", "vpmaskmovq"
- };
- for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
- const char *name = tbl[i];
- put(name, XMM, XMM, MEM);
- put(name, YMM, YMM, MEM);
- put(name, MEM, XMM, XMM);
- put(name, MEM, YMM, YMM);
- }
- }
- {
- const char *tbl[] = {
- "vpermd", "vpermps",
- };
- for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
- const char *name = tbl[i];
- put(name, YMM, YMM, YMM | MEM);
- }
- }
- {
- const char *tbl[] = {
- "vpermq", "vpermpd",
- };
- for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
- const char *name = tbl[i];
- put(name, YMM, YMM | MEM, IMM8);
- }
- }
- put("vpextrw", REG32e | MEM, XMM, IMM); // nasm is ok, yasm generate redundant code
#endif
}
void putCmp()