Added retl for 32-bit x86 and added retq for 64-bit x86.
[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         pause
4 // CHECK: pause
5 // CHECK: encoding: [0xf3,0x90]
6         sfence
7 // CHECK: sfence
8 // CHECK: encoding: [0x0f,0xae,0xf8]
9         lfence
10 // CHECK: lfence
11 // CHECK: encoding: [0x0f,0xae,0xe8]
12         mfence
13 // CHECK: mfence
14 // CHECK: encoding: [0x0f,0xae,0xf0]
15         monitor
16 // CHECK: monitor
17 // CHECK: encoding: [0x0f,0x01,0xc8]
18         mwait
19 // CHECK: mwait
20 // CHECK: encoding: [0x0f,0x01,0xc9]
21
22         vmcall
23 // CHECK: vmcall
24 // CHECK: encoding: [0x0f,0x01,0xc1]
25         vmlaunch
26 // CHECK: vmlaunch
27 // CHECK: encoding: [0x0f,0x01,0xc2]
28         vmresume
29 // CHECK: vmresume
30 // CHECK: encoding: [0x0f,0x01,0xc3]
31         vmxoff
32 // CHECK: vmxoff
33 // CHECK: encoding: [0x0f,0x01,0xc4]
34         swapgs
35 // CHECK: swapgs
36 // CHECK: encoding: [0x0f,0x01,0xf8]
37
38 rdtscp
39 // CHECK: rdtscp
40 // CHECK:  encoding: [0x0f,0x01,0xf9]
41
42
43 // CHECK: movl  %eax, 16(%ebp)          # encoding: [0x89,0x45,0x10]
44         movl    %eax, 16(%ebp)
45 // CHECK: movl  %eax, -16(%ebp)          # encoding: [0x89,0x45,0xf0]
46         movl    %eax, -16(%ebp)
47
48 // CHECK: testb %bl, %cl                # encoding: [0x84,0xcb]
49         testb %bl, %cl
50
51 // CHECK: cmpl  %eax, %ebx              # encoding: [0x39,0xc3]
52         cmpl %eax, %ebx
53
54 // CHECK: addw  %ax, %ax                # encoding: [0x66,0x01,0xc0]
55         addw %ax, %ax
56
57 // CHECK: shrl  %eax                    # encoding: [0xd1,0xe8]
58         shrl $1, %eax
59
60 // moffset forms of moves, rdar://7947184
61 movb    0, %al    // CHECK: movb 0, %al  # encoding: [0xa0,A,A,A,A]
62 movw    0, %ax    // CHECK: movw 0, %ax  # encoding: [0x66,0xa1,A,A,A,A]
63 movl    0, %eax   // CHECK: movl 0, %eax  # encoding: [0xa1,A,A,A,A]
64
65 // rdar://7973775
66 into
67 // CHECK: into
68 // CHECK:  encoding: [0xce]
69 int3
70 // CHECK: int3
71 // CHECK:  encoding: [0xcc]
72 int $4
73 // CHECK: int $4
74 // CHECK:  encoding: [0xcd,0x04]
75 int $255
76 // CHECK: int $255
77 // CHECK:  encoding: [0xcd,0xff]
78
79 // CHECK: pushfl        # encoding: [0x9c]
80         pushf
81 // CHECK: pushfl        # encoding: [0x9c]
82         pushfl
83 // CHECK: popfl         # encoding: [0x9d]
84         popf
85 // CHECK: popfl         # encoding: [0x9d]
86         popfl
87
88 // rdar://8014869
89 retl
90 // CHECK: ret
91 // CHECK:  encoding: [0xc3]