Merge remote-tracking branch 'origin/master'
[unleashed/lotheac.git] / usr / src / test / util-tests / tests / dis / i386 / 32.ssse3.s
blob382f8b65f340af6cff4e52b5c593590e2c555098
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.
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 2016 Joyent, Inc.
17 * Test SSSE3 related instructions
20 .text
21 .align 16
22 .globl libdis_test
23 .type libdis_test, @function
24 libdis_test:
25 pabsb %mm0, %mm1
26 pabsb (%eax), %mm1
27 pabsb %xmm0, %xmm1
28 pabsb (%eax), %xmm1
29 pabsd %mm0, %mm1
30 pabsd (%eax), %mm1
31 pabsd %xmm0, %xmm1
32 pabsd (%eax), %xmm1
33 pabsw %mm0, %mm1
34 pabsw (%eax), %mm1
35 pabsw %xmm0, %xmm1
36 pabsw (%eax), %xmm1
37 palignr $0x23, %mm0, %mm1
38 palignr $0x23, (%eax), %mm1
39 palignr $0x23, %xmm0, %xmm1
40 palignr $0x23, (%eax), %xmm1
41 phaddd %mm0, %mm1
42 phaddd (%eax), %mm1
43 phaddd %xmm0, %xmm1
44 phaddd (%eax), %xmm1
45 phaddw %mm0, %mm1
46 phaddw (%eax), %mm1
47 phaddw %xmm0, %xmm1
48 phaddw (%eax), %xmm1
49 phaddsw %mm0, %mm1
50 phaddsw (%eax), %mm1
51 phaddsw %xmm0, %xmm1
52 phaddsw (%eax), %xmm1
53 phsubd %mm0, %mm1
54 phsubd (%eax), %mm1
55 phsubd %xmm0, %xmm1
56 phsubd (%eax), %xmm1
57 phsubw %mm0, %mm1
58 phsubw (%eax), %mm1
59 phsubw %xmm0, %xmm1
60 phsubw (%eax), %xmm1
61 phsubsw %mm0, %mm1
62 phsubsw (%eax), %mm1
63 phsubsw %xmm0, %xmm1
64 phsubsw (%eax), %xmm1
65 pmaddubsw %mm0, %mm1
66 pmaddubsw (%eax), %mm1
67 pmaddubsw %xmm0, %xmm1
68 pmaddubsw (%eax), %xmm1
69 pmulhrsw %mm0, %mm1
70 pmulhrsw (%eax), %mm1
71 pmulhrsw %xmm0, %xmm1
72 pmulhrsw (%eax), %xmm1
73 pshufb %mm0, %mm1
74 pshufb (%eax), %mm1
75 pshufb %xmm0, %xmm1
76 pshufb (%eax), %xmm1
77 psignb %mm0, %mm1
78 psignb (%eax), %mm1
79 psignb %xmm0, %xmm1
80 psignb (%eax), %xmm1
81 psignd %mm0, %mm1
82 psignd (%eax), %mm1
83 psignd %xmm0, %xmm1
84 psignd (%eax), %xmm1
85 psignw %mm0, %mm1
86 psignw (%eax), %mm1
87 psignw %xmm0, %xmm1
88 psignw (%eax), %xmm1
89 .size libdis_test, [.-libdis_test]