xref: /illumos-gate/usr/src/test/util-tests/tests/dis/i386/32.avx2-gather.s (revision 45ede40b2394db7967e59f19288fae9b62efd4aa)
1/*
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
5 * 1.0 of the CDDL.
6 *
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.
10 */
11
12/*
13 * Copyright 2016 Joyent, Inc.
14 */
15
16/*
17 * Test AVX2 Gather related instructions
18 */
19
20.text
21.align 16
22.globl libdis_test
23.type libdis_test, @function
24libdis_test:
25	vgatherdpd	%xmm0, (%eax, %xmm1, 4), %xmm2
26	vgatherdpd	%xmm0, 0x42(, %xmm1, 4), %xmm2
27	vgatherdpd	%ymm0, (%eax, %xmm1, 4), %ymm2
28	vgatherdpd	%ymm0, 0x42(, %xmm1, 4), %ymm2
29	vgatherdps	%xmm0, (%eax, %xmm1, 4), %xmm2
30	vgatherdps	%xmm0, 0x42(, %xmm1, 4), %xmm2
31	vgatherdps	%ymm0, (%eax, %ymm1, 4), %ymm2
32	vgatherdps	%ymm0, 0x42(, %ymm1, 4), %ymm2
33	vgatherqpd	%xmm0, (%eax, %xmm1, 4), %xmm2
34	vgatherqpd	%xmm0, 0x42(, %xmm1, 4), %xmm2
35	vgatherqpd	%ymm0, (%eax, %ymm1, 4), %ymm2
36	vgatherqpd	%ymm0, 0x42(, %ymm1, 4), %ymm2
37	vgatherqps	%xmm0, (%eax, %xmm1, 4), %xmm2
38	vgatherqps	%xmm0, 0x42(, %xmm1, 4), %xmm2
39	vgatherqps	%xmm0, (%eax, %ymm1, 4), %xmm2
40	vgatherqps	%xmm0, 0x42(, %ymm1, 4), %xmm2
41	vpgatherdd	%xmm0, (%eax, %xmm1, 4), %xmm2
42	vpgatherdd	%xmm0, 0x42(, %xmm1, 4), %xmm2
43	vpgatherdd	%ymm0, (%eax, %ymm1, 4), %ymm2
44	vpgatherdd	%ymm0, 0x42(, %ymm1, 4), %ymm2
45	vpgatherdq	%xmm0, (%eax, %xmm1, 4), %xmm2
46	vpgatherdq	%xmm0, 0x42(, %xmm1, 4), %xmm2
47	vpgatherdq	%ymm0, (%eax, %xmm1, 4), %ymm2
48	vpgatherdq	%ymm0, 0x42(, %xmm1, 4), %ymm2
49	vpgatherqd	%xmm0, (%eax, %xmm1, 4), %xmm2
50	vpgatherqd	%xmm0, 0x42(, %xmm1, 4), %xmm2
51	vpgatherqd	%xmm0, (%eax, %ymm1, 4), %xmm2
52	vpgatherqd	%xmm0, 0x42(, %ymm1, 4), %xmm2
53	vpgatherqq	%xmm0, (%eax, %xmm1, 4), %xmm2
54	vpgatherqq	%xmm0, 0x42(, %xmm1, 4), %xmm2
55	vpgatherqq	%ymm0, (%eax, %ymm1, 4), %ymm2
56	vpgatherqq	%ymm0, 0x42(, %ymm1, 4), %ymm2
57.size libdis_test, [.-libdis_test]
58