1 ;Testname=O0; Arguments=-O0 -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
2 ;Testname=O1; Arguments=-O1 -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
3 ;Testname=Ox; Arguments=-Ox -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
4 ;Testname=error-O0; Arguments=-O0 -fbin -oexpimp.bin -DERROR; Files=stdout stderr expimp.bin
5 ;Testname=error-Ox; Arguments=-Ox -fbin -oexpimp.bin -DERROR; Files=stdout stderr expimp.bin
8 ; Test of explicitly and implicitly sized operands
13 add esi,123456h ; Implicit
14 add esi,byte 2 ; Explicit
15 add esi,dword 2 ; Explicit
16 add esi,dword 123456h ; Explicit
17 add esi,byte 123456h ; Explicit Truncation
19 add esi,strict
2 ; Implicit Strict
20 add esi,strict
123456h ; Implicit Strict
21 add esi,strict
byte 2 ; Explicit Strict
22 add esi,strict
dword 2 ; Explicit Strict
23 add esi,strict
dword 123456h ; Explicit Strict
24 add esi,strict
byte 123456h ; Explicit Strict Truncation
27 add eax,123456h ; Implicit
28 add eax,byte 2 ; Explicit
29 add eax,dword 2 ; Explicit
30 add eax,dword 123456h ; Explicit
31 add eax,byte 123456h ; Explicit Truncation
33 add eax,strict
2 ; Implicit Strict
34 add eax,strict
123456h ; Implicit Strict
35 add eax,strict
byte 2 ; Explicit Strict
36 add eax,strict
dword 2 ; Explicit Strict
37 add eax,strict
dword 123456h ; Explicit Strict
38 add eax,strict
byte 123456h ; Explicit Strict Truncation
41 imul
dx,byte 3 ; Explicit
42 imul
dx,word 3 ; Explicit
43 imul
dx,strict
byte 3 ; Explicit Strict
44 imul
dx,strict
word 3 ; Explicit Strict
47 ; Same thing with branches
50 jmp short start
; Explicit
51 jmp near start
; Explicit
52 jmp word start
; Explicit
53 jmp dword start
; Explicit
54 jmp short forward
; Explicit
55 jmp near forward
; Explicit
56 jmp word forward
; Explicit
57 jmp dword forward
; Explicit
59 jmp short faraway
; Explicit (ERROR)
61 jmp near faraway
; Explicit
62 jmp word faraway
; Explicit
63 jmp dword faraway
; Explicit
65 jmp forward
; Implicit
66 jmp faraway
; Implicit
68 jmp strict
short start
; Explicit Strict
69 jmp strict
near start
; Explicit Strict
70 jmp strict
word start
; Explicit Strict
71 jmp strict
dword start
; Explicit Strict
72 jmp strict
short forward
; Explicit Strict
73 jmp strict
near forward
; Explicit Strict
74 jmp strict
word forward
; Explicit Strict
75 jmp strict
dword forward
; Explicit Strict
77 jmp strict
short faraway
; Explicit (ERROR)
79 jmp strict
near faraway
; Explicit Strict
80 jmp strict
word faraway
; Explicit Strict
81 jmp strict
dword faraway
; Explicit Strict
82 jmp strict start
; Implicit Strict
83 jmp strict forward
; Implicit Strict
84 jmp strict faraway
; Implicit Strict