xref: /illumos-gate/usr/src/test/util-tests/tests/dis/i386/32.fma-pd.s (revision c160bf3613805cfb4a89a0433ae896d3594f551f)
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 FMA3 -PD related instructions
18 */
19
20.text
21.align 16
22.globl libdis_test
23.type libdis_test, @function
24libdis_test:
25	vfmadd132pd	%xmm0, %xmm1, %xmm2
26	vfmadd132pd	(%eax), %xmm1, %xmm2
27	vfmadd132pd	%ymm0, %ymm1, %ymm2
28	vfmadd132pd	(%eax), %ymm1, %ymm2
29	vfmadd213pd	%xmm0, %xmm1, %xmm2
30	vfmadd213pd	(%eax), %xmm1, %xmm2
31	vfmadd213pd	%ymm0, %ymm1, %ymm2
32	vfmadd213pd	(%eax), %ymm1, %ymm2
33	vfmadd231pd	%xmm0, %xmm1, %xmm2
34	vfmadd231pd	(%eax), %xmm1, %xmm2
35	vfmadd231pd	%ymm0, %ymm1, %ymm2
36	vfmadd231pd	(%eax), %ymm1, %ymm2
37	vfmaddsub132pd	%xmm0, %xmm1, %xmm2
38	vfmaddsub132pd	(%eax), %xmm1, %xmm2
39	vfmaddsub132pd	%ymm0, %ymm1, %ymm2
40	vfmaddsub132pd	(%eax), %ymm1, %ymm2
41	vfmaddsub213pd	%xmm0, %xmm1, %xmm2
42	vfmaddsub213pd	(%eax), %xmm1, %xmm2
43	vfmaddsub213pd	%ymm0, %ymm1, %ymm2
44	vfmaddsub213pd	(%eax), %ymm1, %ymm2
45	vfmaddsub231pd	%xmm0, %xmm1, %xmm2
46	vfmaddsub231pd	(%eax), %xmm1, %xmm2
47	vfmaddsub231pd	%ymm0, %ymm1, %ymm2
48	vfmaddsub231pd	(%eax), %ymm1, %ymm2
49	vfmsub132pd	%xmm0, %xmm1, %xmm2
50	vfmsub132pd	(%eax), %xmm1, %xmm2
51	vfmsub132pd	%ymm0, %ymm1, %ymm2
52	vfmsub132pd	(%eax), %ymm1, %ymm2
53	vfmsub213pd	%xmm0, %xmm1, %xmm2
54	vfmsub213pd	(%eax), %xmm1, %xmm2
55	vfmsub213pd	%ymm0, %ymm1, %ymm2
56	vfmsub213pd	(%eax), %ymm1, %ymm2
57	vfmsub231pd	%xmm0, %xmm1, %xmm2
58	vfmsub231pd	(%eax), %xmm1, %xmm2
59	vfmsub231pd	%ymm0, %ymm1, %ymm2
60	vfmsub231pd	(%eax), %ymm1, %ymm2
61	vfmsubadd132pd	%xmm0, %xmm1, %xmm2
62	vfmsubadd132pd	(%eax), %xmm1, %xmm2
63	vfmsubadd132pd	%ymm0, %ymm1, %ymm2
64	vfmsubadd132pd	(%eax), %ymm1, %ymm2
65	vfmsubadd213pd	%xmm0, %xmm1, %xmm2
66	vfmsubadd213pd	(%eax), %xmm1, %xmm2
67	vfmsubadd213pd	%ymm0, %ymm1, %ymm2
68	vfmsubadd213pd	(%eax), %ymm1, %ymm2
69	vfmsubadd231pd	%xmm0, %xmm1, %xmm2
70	vfmsubadd231pd	(%eax), %xmm1, %xmm2
71	vfmsubadd231pd	%ymm0, %ymm1, %ymm2
72	vfmsubadd231pd	(%eax), %ymm1, %ymm2
73	vfnmadd132pd	%xmm0, %xmm1, %xmm2
74	vfnmadd132pd	(%eax), %xmm1, %xmm2
75	vfnmadd132pd	%ymm0, %ymm1, %ymm2
76	vfnmadd132pd	(%eax), %ymm1, %ymm2
77	vfnmadd213pd	%xmm0, %xmm1, %xmm2
78	vfnmadd213pd	(%eax), %xmm1, %xmm2
79	vfnmadd213pd	%ymm0, %ymm1, %ymm2
80	vfnmadd213pd	(%eax), %ymm1, %ymm2
81	vfnmadd231pd	%xmm0, %xmm1, %xmm2
82	vfnmadd231pd	(%eax), %xmm1, %xmm2
83	vfnmadd231pd	%ymm0, %ymm1, %ymm2
84	vfnmadd231pd	(%eax), %ymm1, %ymm2
85	vfnmsub132pd	%xmm0, %xmm1, %xmm2
86	vfnmsub132pd	(%eax), %xmm1, %xmm2
87	vfnmsub132pd	%ymm0, %ymm1, %ymm2
88	vfnmsub132pd	(%eax), %ymm1, %ymm2
89	vfnmsub213pd	%xmm0, %xmm1, %xmm2
90	vfnmsub213pd	(%eax), %xmm1, %xmm2
91	vfnmsub213pd	%ymm0, %ymm1, %ymm2
92	vfnmsub213pd	(%eax), %ymm1, %ymm2
93	vfnmsub231pd	%xmm0, %xmm1, %xmm2
94	vfnmsub231pd	(%eax), %xmm1, %xmm2
95	vfnmsub231pd	%ymm0, %ymm1, %ymm2
96	vfnmsub231pd	(%eax), %ymm1, %ymm2
97.size libdis_test, [.-libdis_test]
98