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=O2; Arguments=-O2 -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
4 ;Testname=O3; Arguments=-O3 -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
5 ;Testname=O4; Arguments=-O4 -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
6 ;Testname=O5; Arguments=-O5 -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
7 ;Testname=Ox; Arguments=-Ox -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
8 ;Testname=error-O0; Arguments=-O0 -fbin -oexpimp.bin -DERROR; Files=stdout stderr expimp.bin
9 ;Testname=error-Ox; Arguments=-Ox -fbin -oexpimp.bin -DERROR; Files=stdout stderr expimp.bin
12 ; Test of explicitly and implicitly sized operands
17 add esi,123456h ; Implicit
18 add esi,byte 2 ; Explicit
19 add esi,dword 2 ; Explicit
20 add esi,dword 123456h ; Explicit
21 add esi,byte 123456h ; Explicit Truncation
23 add esi,strict
2 ; Implicit Strict
24 add esi,strict
123456h ; Implicit Strict
25 add esi,strict
byte 2 ; Explicit Strict
26 add esi,strict
dword 2 ; Explicit Strict
27 add esi,strict
dword 123456h ; Explicit Strict
28 add esi,strict
byte 123456h ; Explicit Strict Truncation
31 add eax,123456h ; Implicit
32 add eax,byte 2 ; Explicit
33 add eax,dword 2 ; Explicit
34 add eax,dword 123456h ; Explicit
35 add eax,byte 123456h ; Explicit Truncation
37 add eax,strict
2 ; Implicit Strict
38 add eax,strict
123456h ; Implicit Strict
39 add eax,strict
byte 2 ; Explicit Strict
40 add eax,strict
dword 2 ; Explicit Strict
41 add eax,strict
dword 123456h ; Explicit Strict
42 add eax,strict
byte 123456h ; Explicit Strict Truncation
45 imul
dx,byte 3 ; Explicit
46 imul
dx,word 3 ; Explicit
47 imul
dx,strict
byte 3 ; Explicit Strict
48 imul
dx,strict
word 3 ; Explicit Strict
51 ; Same thing with branches
54 jmp short start
; Explicit
55 jmp near start
; Explicit
56 jmp word start
; Explicit
57 jmp dword start
; Explicit
58 jmp short forward
; Explicit
59 jmp near forward
; Explicit
60 jmp word forward
; Explicit
61 jmp dword forward
; Explicit
63 jmp short faraway
; Explicit (ERROR)
65 jmp near faraway
; Explicit
66 jmp word faraway
; Explicit
67 jmp dword faraway
; Explicit
69 jmp forward
; Implicit
70 jmp faraway
; Implicit
72 jmp strict
short start
; Explicit Strict
73 jmp strict
near start
; Explicit Strict
74 jmp strict
word start
; Explicit Strict
75 jmp strict
dword start
; Explicit Strict
76 jmp strict
short forward
; Explicit Strict
77 jmp strict
near forward
; Explicit Strict
78 jmp strict
word forward
; Explicit Strict
79 jmp strict
dword forward
; Explicit Strict
81 jmp strict
short faraway
; Explicit (ERROR)
83 jmp strict
near faraway
; Explicit Strict
84 jmp strict
word faraway
; Explicit Strict
85 jmp strict
dword faraway
; Explicit Strict
86 jmp strict start
; Implicit Strict
87 jmp strict forward
; Implicit Strict
88 jmp strict faraway
; Implicit Strict