xref: /illumos-gate/usr/src/test/util-tests/tests/dis/i386/64.bmi1.s (revision 2380c36e1bade5eb4eb6c6b7445ff58583f998cf)
1*2380c36eSRobert Mustacchi/*
2*2380c36eSRobert Mustacchi * This file and its contents are supplied under the terms of the
3*2380c36eSRobert Mustacchi * Common Development and Distribution License ("CDDL"), version 1.0.
4*2380c36eSRobert Mustacchi * You may only use this file in accordance with the terms of version
5*2380c36eSRobert Mustacchi * 1.0 of the CDDL.
6*2380c36eSRobert Mustacchi *
7*2380c36eSRobert Mustacchi * A full copy of the text of the CDDL should have accompanied this
8*2380c36eSRobert Mustacchi * source.  A copy of the CDDL is also available via the Internet at
9*2380c36eSRobert Mustacchi * http://www.illumos.org/license/CDDL.
10*2380c36eSRobert Mustacchi */
11*2380c36eSRobert Mustacchi
12*2380c36eSRobert Mustacchi/*
13*2380c36eSRobert Mustacchi * Copyright 2016 Joyent, Inc.
14*2380c36eSRobert Mustacchi */
15*2380c36eSRobert Mustacchi
16*2380c36eSRobert Mustacchi/*
17*2380c36eSRobert Mustacchi * Test bmi1 related instructions
18*2380c36eSRobert Mustacchi */
19*2380c36eSRobert Mustacchi
20*2380c36eSRobert Mustacchi.text
21*2380c36eSRobert Mustacchi.align 16
22*2380c36eSRobert Mustacchi.globl libdis_test
23*2380c36eSRobert Mustacchi.type libdis_test, @function
24*2380c36eSRobert Mustacchilibdis_test:
25*2380c36eSRobert Mustacchi	andn	%eax, %ebx, %edx
26*2380c36eSRobert Mustacchi	andn	(%rax), %ebx, %edx
27*2380c36eSRobert Mustacchi	andn	0x40(%rax), %ebx, %edx
28*2380c36eSRobert Mustacchi	bextr	%ebx, %eax, %edx
29*2380c36eSRobert Mustacchi	bextr	%ebx, (%rax), %edx
30*2380c36eSRobert Mustacchi	bextr	%ebx, 0x40(%rax), %edx
31*2380c36eSRobert Mustacchi	blsi	%eax, %edx
32*2380c36eSRobert Mustacchi	blsi	(%rax), %edx
33*2380c36eSRobert Mustacchi	blsi	0x40(%rax), %edx
34*2380c36eSRobert Mustacchi	blsmsk	%eax, %edx
35*2380c36eSRobert Mustacchi	blsmsk	(%rax), %edx
36*2380c36eSRobert Mustacchi	blsmsk	0x40(%rax), %edx
37*2380c36eSRobert Mustacchi	blsr	%eax, %edx
38*2380c36eSRobert Mustacchi	blsr	(%rax), %edx
39*2380c36eSRobert Mustacchi	blsr	0x40(%rax), %edx
40*2380c36eSRobert Mustacchi	tzcnt	%ax, %dx
41*2380c36eSRobert Mustacchi	tzcnt	(%rax), %dx
42*2380c36eSRobert Mustacchi	tzcnt	0x40(%rax), %dx
43*2380c36eSRobert Mustacchi	tzcnt	%eax, %edx
44*2380c36eSRobert Mustacchi	tzcnt	(%rax), %edx
45*2380c36eSRobert Mustacchi	tzcnt	0x40(%rax), %edx
46*2380c36eSRobert Mustacchi
47*2380c36eSRobert Mustacchi	andn	%rax, %rbx, %rdx
48*2380c36eSRobert Mustacchi	andn	(%rax), %rbx, %rdx
49*2380c36eSRobert Mustacchi	andn	0x40(%rax), %rbx, %rdx
50*2380c36eSRobert Mustacchi	bextr	%rbx, %rax, %rdx
51*2380c36eSRobert Mustacchi	bextr	%rbx, (%rax), %rdx
52*2380c36eSRobert Mustacchi	bextr	%rbx, 0x40(%rax), %rdx
53*2380c36eSRobert Mustacchi	blsi	%rax, %rdx
54*2380c36eSRobert Mustacchi	blsi	(%rax), %rdx
55*2380c36eSRobert Mustacchi	blsi	0x40(%rax), %rdx
56*2380c36eSRobert Mustacchi	blsmsk	%rax, %rdx
57*2380c36eSRobert Mustacchi	blsmsk	(%rax), %rdx
58*2380c36eSRobert Mustacchi	blsmsk	0x40(%rax), %rdx
59*2380c36eSRobert Mustacchi	blsr	%rax, %rdx
60*2380c36eSRobert Mustacchi	blsr	(%rax), %rdx
61*2380c36eSRobert Mustacchi	blsr	0x40(%rax), %rdx
62*2380c36eSRobert Mustacchi	tzcnt	%rax, %rdx
63*2380c36eSRobert Mustacchi	tzcnt	(%rax), %rdx
64*2380c36eSRobert Mustacchi	tzcnt	0x40(%rax), %rdx
65*2380c36eSRobert Mustacchi.size libdis_test, [.-libdis_test]
66