Fix handling of XCHG in 64-bit mode
[nasm.git] / test / expimp.asm
blob2db0338c936eb54ec44bc3a06ea4a4feea81c36a
2 ; Test of explicitly and implicitly sized operands
4 add esi,2 ; Implicit
5 add esi,123456h ; Implicit
6 add esi,byte 2 ; Explicit
7 add esi,dword 2 ; Explicit
8 add esi,dword 123456h ; Explicit
9 add esi,byte 123456h ; Explicit Truncation
11 add esi,strict 2 ; Implicit Strict
12 add esi,strict 123456h ; Implicit Strict
13 add esi,strict byte 2 ; Explicit Strict
14 add esi,strict dword 2 ; Explicit Strict
15 add esi,strict dword 123456h ; Explicit Strict
16 add esi,strict byte 123456h ; Explicit Strict Truncation
18 add eax,2 ; Implicit
19 add eax,123456h ; Implicit
20 add eax,byte 2 ; Explicit
21 add eax,dword 2 ; Explicit
22 add eax,dword 123456h ; Explicit
23 add eax,byte 123456h ; Explicit Truncation
25 add eax,strict 2 ; Implicit Strict
26 add eax,strict 123456h ; Implicit Strict
27 add eax,strict byte 2 ; Explicit Strict
28 add eax,strict dword 2 ; Explicit Strict
29 add eax,strict dword 123456h ; Explicit Strict
30 add eax,strict byte 123456h ; Explicit Strict Truncation
32 imul dx,3 ; Implicit
33 imul dx,byte 3 ; Explicit
34 imul dx,word 3 ; Explicit
35 imul dx,strict byte 3 ; Explicit Strict
36 imul dx,strict word 3 ; Explicit Strict
39 ; Same thing with branches
41 start:
42 jmp short start ; Explicit
43 jmp near start ; Explicit
44 jmp word start ; Explicit
45 jmp dword start ; Explicit
46 jmp short forward ; Explicit
47 jmp near forward ; Explicit
48 jmp word forward ; Explicit
49 jmp dword forward ; Explicit
50 %ifdef ERROR
51 jmp short faraway ; Explicit (ERROR)
52 %endif
53 jmp near faraway ; Explicit
54 jmp word faraway ; Explicit
55 jmp dword faraway ; Explicit
56 jmp start ; Implicit
57 jmp forward ; Implicit
58 jmp faraway ; Implicit
60 jmp strict short start ; Explicit Strict
61 jmp strict near start ; Explicit Strict
62 jmp strict word start ; Explicit Strict
63 jmp strict dword start ; Explicit Strict
64 jmp strict short forward ; Explicit Strict
65 jmp strict near forward ; Explicit Strict
66 jmp strict word forward ; Explicit Strict
67 jmp strict dword forward ; Explicit Strict
68 %ifdef ERROR
69 jmp strict short faraway ; Explicit (ERROR)
70 %endif
71 jmp strict near faraway ; Explicit Strict
72 jmp strict word faraway ; Explicit Strict
73 jmp strict dword faraway ; Explicit Strict
74 jmp strict start ; Implicit Strict
75 jmp strict forward ; Implicit Strict
76 jmp strict faraway ; Implicit Strict
77 forward:
79 times 256 nop
80 faraway: