2 * This file and its contents are supplied under the terms of the
3 * Common Development and Distribution License ("CDDL"), version 1.0.
4 * You may only use this file in accordance with the terms of version
7 * A full copy of the text of the CDDL should have accompanied this
8 * source. A copy of the CDDL is also available via the Internet at
9 * http://www.illumos.org/license/CDDL.
13 * Copyright 2017 Joyent, Inc.
17 * Basic test for AVX512 mov instructions
23 .type libdis_test, @function
25 /* bound is not AVX512, but shares the 0x62 opcode on 32-bit. */
43 vmovaps
%zmm4
, 0x8(%esp
)
44 vmovaps
0x8(%esp
), %zmm3
45 vmovaps
%zmm1
, %zmm7
{%k1
}{z
}
46 vmovaps
%zmm6
, %zmm4
{%k7
}
47 vmovaps
%zmm2
, %zmm3
{z
}
49 vmovaps
%xmm7
, %xmm2
{%k3
}{z
}
50 vmovaps
%ymm1
, %ymm3
{%k5
}
54 vmovups
%zmm7
, 0x20(%ebp
)
55 vmovups
0x8(%esp
), %zmm7
56 vmovups
(%eax
), %zmm3
{z
}
58 vmovupd
(%esp
), %zmm1
{%k2
}
61 /* Test offset handling for both disp8*N and full. */
63 vmovaps
%zmm5
, 0x20(%esp
)
64 vmovaps
%zmm4
, 0x40(%esp
)
65 vmovaps
%zmm4
, 0x60(%esp
)
66 vmovaps
%zmm4
, 0x80(%esp
)
67 vmovaps
%zmm4
, -0x80(%esp
)
68 vmovaps
%zmm4
, -0x20(%esp
)
71 vmovaps
0x20(%esp
), %zmm5
72 vmovaps
0x40(%esp
), %zmm5
73 vmovaps
0x60(%esp
), %zmm5
74 vmovaps
0x80(%esp
), %zmm5
75 vmovaps
-0x80(%esp
), %zmm5
76 vmovaps
-0x20(%esp
), %zmm5
78 vmovdqa32
%zmm6
, 0x100(%esp
)
79 vmovdqa32
%ymm6
, 0x100(%esp
)
80 vmovdqa32
%xmm6
, 0x100(%esp
)
81 vmovdqa32
(%eax
), %zmm6
82 vmovdqa32
(%eax
), %ymm6
83 vmovdqa32
(%eax
), %xmm6
85 vmovdqa64
%zmm6
, 0x100(%esp
)
86 vmovdqa64
%ymm6
, 0x100(%esp
)
87 vmovdqa64
%xmm6
, 0x100(%esp
)
88 vmovdqa64
0x800(%esp
), %zmm6
89 vmovdqa64
0x800(%esp
), %ymm6
90 vmovdqa64
0x800(%esp
), %xmm6
92 vmovdqu8
%zmm0
, (%esp
)
93 vmovdqu16
%zmm0
, (%esp
)
94 vmovdqu32
%zmm0
, (%esp
)
95 vmovdqu64
%zmm0
, (%esp
)
96 vmovdqu8
(%esp
), %zmm0
97 vmovdqu16
(%esp
), %zmm0
98 vmovdqu32
(%esp
), %zmm0
99 vmovdqu64
(%esp
), %zmm0
100 .size libdis_test, [.-libdis_test]