1bits 32 2 3;jmp strict near foo 4;jmp near foo 5;jmp strict short foo 6;jmp short foo 7;jmp foo 8; 9;jz strict near foo 10;jz near foo 11;jz strict short foo 12;jz short foo 13;jz foo 14; 15;foo: 16 17add eax, 4 18add eax, strict 4 ; NASM generates dword, yasm generates byte 19add eax, byte 4 20add eax, strict byte 4 21add eax, dword 4 ; optimized to byte 22add eax, strict dword 4 23add eax, 400 24add eax, strict 400 25add eax, byte 400 ; generates warning 26add eax, strict byte 400 ; generates warning 27add eax, dword 400 ; optimized to byte 28add eax, strict dword 400 29 30add ebx, 4 31add ebx, strict 4 ; NASM generates dword, yasm generates byte 32add ebx, byte 4 33add ebx, strict byte 4 34add ebx, dword 4 ; optimized to byte 35add ebx, strict dword 4 36add ebx, 400 37add ebx, strict 400 38add ebx, byte 400 ; generates warning 39add ebx, strict byte 400 ; generates warning 40add ebx, dword 400 ; optimized to byte 41add ebx, strict dword 400 42 43add [eax], byte 4 ; same as byte [eax], 4 44add [eax], strict byte 4 ; same as byte [eax], 4 45add [eax], dword 4 ; generates dword [eax], byte 4 46add [eax], strict dword 4 ; generates dword [eax], dword 4 47 48add dword [eax], 4 49add dword [eax], strict 4 ; NASM generates dword, yasm generates byte 50add dword [eax], byte 4 51add dword [eax], strict byte 4 52add dword [eax], dword 4 ; optimized to byte 53add dword [eax], strict dword 4 54add dword [eax], 400 55add dword [eax], strict 400 56add dword [eax], byte 400 ; generates warning 57add dword [eax], strict byte 400; generates warning 58add dword [eax], dword 400 ; optimized to byte 59add dword [eax], strict dword 400 60 61push 4 62push strict 4 ; NASM generates dword, yasm generates byte 63push byte 4 64push strict byte 4 65push dword 4 ; optimized to byte 66push strict dword 4 67push 400 68push strict 400 69push byte 400 ; generates warning 70push strict byte 400 ; generates warning 71push dword 400 72push strict dword 400 73 74imul eax, 4 75imul eax, strict 4 ; NASM generates dword, yasm generates byte 76imul eax, byte 4 77imul eax, strict byte 4 78imul eax, dword 4 ; optimized to byte 79imul eax, strict dword 4 80imul eax, 400 81imul eax, strict 400 82imul eax, byte 400 ; generates warning 83imul eax, strict byte 400 ; generates warning 84imul eax, dword 400 85imul eax, strict dword 400 86 87%ifndef __NASM_VERSION_ID__ 88bits 64 89add rax, 4 90add rax, strict 4 ; NASM generates dword, yasm generates byte 91add rax, byte 4 92add rax, strict byte 4 93add rax, dword 4 94add rax, strict dword 4 95add rax, 400 96add rax, strict 400 97add rax, byte 400 ; generates warning 98add rax, strict byte 400 ; generates warning 99add rax, dword 400 100add rax, strict dword 400 101 102add rbx, 4 103add rbx, strict 4 ; NASM generates dword, yasm generates byte 104add rbx, byte 4 105add rbx, strict byte 4 106add rbx, dword 4 107add rbx, strict dword 4 108add rbx, 400 109add rbx, strict 400 110add rbx, byte 400 ; generates warning 111add rbx, strict byte 400 ; generates warning 112add rbx, dword 400 113add rbx, strict dword 400 114 115add [rax], byte 4 ; same as byte [rax], 4 116add [rax], strict byte 4 ; same as byte [rax], 4 117add [rax], word 4 ; same as word [rax], 4 118add [rax], strict word 4 ; same as word [rax], strict word 4 119 120add dword [rax], 4 121add dword [rax], strict 4 122add dword [rax], byte 4 123add dword [rax], strict byte 4 124add dword [rax], dword 4 125add dword [rax], strict dword 4 126add dword [rax], 400 127add dword [rax], strict 400 128add dword [rax], byte 400 ; generates warning 129add dword [rax], strict byte 400; generates warning 130add dword [rax], dword 400 131add dword [rax], strict dword 400 132 133add qword [rax], 4 134add qword [rax], strict 4 135add qword [rax], byte 4 136add qword [rax], strict byte 4 137add qword [rax], dword 4 138add qword [rax], strict dword 4 139add qword [rax], 400 140add qword [rax], strict 400 141add qword [rax], byte 400 ; generates warning 142add qword [rax], strict byte 400; generates warning 143add qword [rax], dword 400 144add qword [rax], strict dword 400 145 146push 4 147push strict 4 ; NASM generates dword, yasm generates byte 148push byte 4 149push strict byte 4 150push dword 4 ; optimized to byte 151push strict dword 4 152;push qword 4 ; illegal 153;push strict qword 4 ; illegal 154push 400 155push strict 400 156push byte 400 ; generates warning 157push strict byte 400 ; generates warning 158push dword 400 159push strict dword 400 160;push qword 400 ; illegal 161;push strict qword 400 ; illegal 162 163%endif 164