Fix the sfence instruction to use MRM_F8 instead of MRM7r, since it
[oota-llvm.git] / test / MC / AsmParser / X86 / x86_32-new-encoder.s
1 // RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
2
3         sfence
4 // CHECK: sfence
5 // CHECK: encoding: [0x0f,0xae,0xf8]
6         lfence
7 // CHECK: lfence
8 // CHECK: encoding: [0x0f,0xae,0xe8]
9         mfence
10 // CHECK: mfence
11 // CHECK: encoding: [0x0f,0xae,0xf0]
12         monitor
13 // CHECK: monitor
14 // CHECK: encoding: [0x0f,0x01,0xc8]
15         mwait
16 // CHECK: mwait
17 // CHECK: encoding: [0x0f,0x01,0xc9]
18
19         vmcall
20 // CHECK: vmcall
21 // CHECK: encoding: [0x0f,0x01,0xc1]
22         vmlaunch
23 // CHECK: vmlaunch
24 // CHECK: encoding: [0x0f,0x01,0xc2]
25         vmresume
26 // CHECK: vmresume
27 // CHECK: encoding: [0x0f,0x01,0xc3]
28         vmxoff
29 // CHECK: vmxoff
30 // CHECK: encoding: [0x0f,0x01,0xc4]
31         swapgs
32 // CHECK: swapgs
33 // CHECK: encoding: [0x0f,0x01,0xf8]
34
35 rdtscp
36 // CHECK: rdtscp
37 // CHECK:  encoding: [0x0f,0x01,0xf9]
38
39
40 // CHECK: movl  %eax, 16(%ebp)          # encoding: [0x89,0x45,0x10]
41         movl    %eax, 16(%ebp)
42 // CHECK: movl  %eax, -16(%ebp)          # encoding: [0x89,0x45,0xf0]
43         movl    %eax, -16(%ebp)
44
45 // CHECK: testb %bl, %cl                # encoding: [0x84,0xcb]
46         testb %bl, %cl
47
48 // CHECK: cmpl  %eax, %ebx              # encoding: [0x39,0xc3]
49         cmpl %eax, %ebx
50
51 // CHECK: addw  %ax, %ax                # encoding: [0x66,0x01,0xc0]
52         addw %ax, %ax
53
54 // CHECK: shrl  %eax                    # encoding: [0xd1,0xe8]
55         shrl $1, %eax
56
57 // moffset forms of moves, rdar://7947184
58 movb    0, %al    // CHECK: movb 0, %al  # encoding: [0xa0,A,A,A,A]
59 movw    0, %ax    // CHECK: movw 0, %ax  # encoding: [0x66,0xa1,A,A,A,A]
60 movl    0, %eax   // CHECK: movl 0, %eax  # encoding: [0xa1,A,A,A,A]
61
62 // rdar://7973775
63 into
64 // CHECK: into
65 // CHECK:  encoding: [0xce]
66 int3
67 // CHECK: int3
68 // CHECK:  encoding: [0xcc]
69 int $4
70 // CHECK: int $4
71 // CHECK:  encoding: [0xcd,0x04]
72 int $255
73 // CHECK: int $255
74 // CHECK:  encoding: [0xcd,0xff]