$; CodeX 1.0 opcode map 2.34 $; written by Marco Kaufmann, Release 2002/11/21 $; $; This opcode map for CodeX Assembler 1.0 provides support for Intel 086, $; 186,286,386,i486, i486 recent, Pentium, PPro, PII, PIII, PIV and AMD K6-II $; -CPUs like also for 087,287 and 387 numerical co-processors. $; $; This file as part of the CodeX Assembler is distributed free, but without $; any warranty, even without the warranty of merchantability. $; I remind, that use is on own risk. $codex_opcode_map $codex_ver 1.0 $map_ver 2.34 $map_date 2002/11/21 $map_author Marco Kaufmann $instsets 087inst ia32 287inst ia32 387inst ia32 086inst ia32 186inst ia32 286inst ia32 386inst ia32 486inst ia32 486_recinst ia32 pentiuminst ia32 pproinst ia32 piiinst ia32 piiiinst ia32 pivinst ia32 k6iiinst ia32 $cpus 087 set 087inst 287 set 087,287inst 387 set 287,387inst 086 set 086inst 186 set 086,186inst 286 set 186,286inst 386 set 286,386inst 486 set 387,386,486inst 486_rec set 486,486_recinst pentium set 486_rec,pentiuminst ppro set pentium,pproinst pii set ppro,piiinst k6ii set k6iiinst,pii piii set pii,piiiinst katmai set piii piv set piii,pivinst sledgehammer set piv $regs [086inst] r8: al:0,cl:1,dl:2,bl:3,ah:4,ch:5,dh:6,bh:7 r16: ax:0,cx:1,dx:2,bx:3,sp:4,bp:5,si:6,di:7 sreg: es:0,cs:1,ss:2,ds:3 [087inst] st: st0:0,st1:1,st2:2,st3:3,st4:4,st5:5,st6:6,st7:7 [386inst] r32: eax:0,ecx:1,edx:2,ebx:3,esp:4,ebp:5,esi:6,edi:7 sreg: fs:4,gs:5 cr: cr0:0,cr2:2,cr3:3,cr4:4 dr: dr0:0,dr1:1,dr2:2,dr3:3,dr6:6,dr7:7 [piiinst] mm: mm0:0,mm1:1,mm2:2,mm3:3,mm4:4,mm5:5,mm6:6,mm7:7 [piiiinst] xmm: xmm0:0,xmm1:1,xmm2:2,xmm3:3,xmm4:4,xmm5:5,xmm6:6,xmm7:7 $prefixs [086inst] cs ;2E ds ;3E es ;26 lock ;F0 rep ;F3 repe ;F3 repne ;F2 repnz ;F2 repz ;F3 ss ;36 [386inst] fs ;64 gs ;65 osovr ;66 asovr ;67 $insts [086inst] aaa ;37 aad ;D5,0A aam ;D4,0A aas ;3F adc r8/m,r8 ;10 adc r16/m,r16 ;11 o16 adc r8,r8/m ;12 adc r16,r16/m ;13 o16 adc r8/m8,imm8 ;80/2 adc r16/m16,imm16 ;81/2 o16 add r8/m8,imm8 ;80/0 add r16/m16,imm16 ;81/0 o16 add r8/m,r8 ;00 add r16/m,r16 ;01 o16 add r8,r8/m ;02 add r16,r16/m ;03 o16 and r8/m,r8 ;20 and r16/m,r16 ;21 o16 and r8,r8/m ;22 and r16,r16/m ;23 o16 and r8/m8,imm8 ;80/4 and r16/m16,imm16 ;81/4 o16 call rel16 ;E8 o16 call r16/m16 ;FF/2 o16 call far imm32 ;9A o16 call far m32 ;FF/3 o16 cbw ;98 o16 clc ;F8 cld ;FC cli ;FA cmc ;F5 cmp r8/m8,imm8 ;80/7 cmp r16/m16,imm16 ;81/7 o16 cmp r8/m,r8 ;38 cmp r16/m,r16 ;39 o16 cmp r8,r8/m ;3A cmp r16,r16/m ;3B o16 cmpsb ;A6 cmpsw ;A7 o16 cwd ;99 o16 daa ;27 das ;2F dec r8/m8 ;FE/1 dec r16/m16 ;FF/1 o16 div r8/m8 ;F6/6 div r16/m16 ;F7/6 o16 hlt ;F4 idiv r8/m8 ;F6/7 idiv r16/m16 ;F7/7 o16 imul r8/m8 ;F6/5 imul r16/m16 ;F7/5 o16 in al,imm8 ;E4 in ax,imm8 ;E5 o16 in al,dx ;EC in ax,dx ;ED o16 inc r8/m8 ;FE/0 inc r16/m16 ;FF/0 o16 int imm8 ;CD int3 ;CC into ;CE iret ;CF iretw ;CF o16 ja rel8 ;77 jae rel8 ;73 jb rel8 ;72 jbe rel8 ;76 jc rel8 ;72 je rel8 ;74 jg rel8 ;7F jge rel8 ;7D jl rel8 ;7C jle rel8 ;7E jna rel8 ;76 jnae rel8 ;72 jnb rel8 ;73 jnbe rel8 ;77 jnc rel8 ;73 jne rel8 ;75 jng rel8 ;7E jnge rel8 ;7C jnl rel8 ;7D jnle rel8 ;7F jno rel8 ;71 jnp rel8 ;7B jns rel8 ;79 jnz rel8 ;75 jo rel8 ;70 jp rel8 ;7A jpe rel8 ;7A jpo rel8 ;7B js rel8 ;78 jz rel8 ;74 jmp rel16 ;E9 o16 jmp r16/m16 ;FF/4 o16 jmp far imm32 ;EA o16 lahf ;9F lea r16,m ;8D o16 lds r16,m ;C5 o16 les r16,m ;C4 o16 lodsb ;AC lodsw ;AD o16 loop rel8 ;E2 loope rel8 ;E1 loopz rel8 ;E1 loopne rel8 ;E0 loopnz rel8 ;E0 mov r8/m,r8 ;88 mov r16/m,r16 ;89 o16 mov r8,r8/m ;8A mov r16,r16/m ;8B o16 mov r16/m,sreg ;8C mov sreg,r16/m ;8E mov r8/m8,imm8 ;C6 mov r16/m16,imm16 ;C7 o16 movsb ;A4 movsw ;A5 o16 mul r8/m8 ;F6/4 mul r16/m16 ;F7/4 o16 neg r8/m8 ;F6/3 neg r16/m16 ;F7/3 o16 nop ;90 not r8/m8 ;F6/2 not r16/m16 ;F7/2 o16 or r8/m8,imm8 ;80/1 or r16/m16,imm16 ;81/1 o16 or r8/m,r8 ;08 or r16/m,r16 ;09 o16 or r8,r8/m ;0A or r16,r16/m ;0B o16 out imm8,al ;E6 out imm8,ax ;E7 o16 out dx,al ;EE out dx,ax ;EF o16 pop m16 ;8F/0 o16 pop r16 ;58 o16 pop ds ;1F o16 pop es ;07 o16 pop ss ;17 o16 popf ;9D o16 popfw ;9D o16 push m16 ;FF/6 o16 push r16 ;50 o16 push cs ;0E o16 push ss ;16 o16 push ds ;1E o16 push es ;06 o16 pushf ;9C o16 pushfw ;9C o16 rcl r8/m8,1 ;D0/2 rcl r8/m8,cl ;D2/2 rcl r16/m16,1 ;D1/2 o16 rcl r16/m16,cl ;D3/2 o16 rcr r8/m8,1 ;D0/3 rcr r8/m8,cl ;D2/3 rcr r16/m16,1 ;D1/3 o16 rcr r16/m16,cl ;D3/3 o16 rol r8/m8,1 ;D0/0 rol r8/m8,cl ;D2/0 rol r16/m16,1 ;D1/0 o16 rol r16/m16,cl ;D3/0 o16 ror r8/m8,1 ;D0/1 ror r8/m8,cl ;D2/1 ror r16/m16,1 ;D1/1 o16 ror r16/m16,cl ;D3/1 o16 ret ;C3 ret imm16 ;C2 ret far ;CB ret far imm16 ;CA sahf ;9E sal r8/m8,1 ;D0/4 sal r8/m8,cl ;D2/4 sal r16/m16,1 ;D1/4 o16 sal r16/m16,cl ;D3/4 o16 sar r8/m8,1 ;D0/7 sar r8/m8,cl ;D2/7 sar r16/m16,1 ;D1/7 o16 sar r16/m16,cl ;D3/7 o16 shl r8/m8,1 ;D0/4 shl r8/m8,cl ;D2/4 shl r16/m16,1 ;D1/4 o16 shl r16/m16,cl ;D3/4 o16 shr r8/m8,1 ;D0/5 shr r8/m8,cl ;D2/5 shr r16/m16,1 ;D1/5 o16 shr r16/m16,cl ;D3/5 o16 sbb r8/m8,imm8 ;80/3 sbb r16/m16,imm16 ;81/3 o16 sbb r8/m,r8 ;18 sbb r16/m,r16 ;19 o16 sbb r8,r8/m ;1A sbb r16,r16/m ;1B o16 scasb ;AE scasw ;AF o16 stc ;F9 std ;FD sti ;FB stosb ;AA stosw ;AB o16 sub r8/m8,imm8 ;80/5 sub r16/m16,imm16 ;81/5 o16 sub r8/m,r8 ;28 sub r16/m,r16 ;29 o16 sub r8,r8/m ;2A sub r16,r16/m ;2B o16 test r8/m8,imm8 ;F6/0 test r16/m16,imm16 ;F7/0 o16 test r8/m,r8 ;84 test r16/m,r16 ;85 o16 test r8,r8/m ;84 test r16,r16/m ;85 o16 wait ;9B xchg r8/m,r8 ;86 xchg r8,r8/m ;86 xchg r16/m,r16 ;87 o16 xchg r16,r16/m ;87 o16 xlatb ;D7 xor r8/m8,imm8 ;80/6 xor r16/m16,imm16 ;81/6 o16 xor r8/m,r8 ;30 xor r16/m,r16 ;31 o16 xor r8,r8/m ;32 xor r16,r16/m ;33 o16 [186inst] bound r16,m ;62 o16 enter imm16,imm8 ;C8 insb ;6C insw ;6D o16 leave ;C9 outsb ;6E outsw ;6F o16 popa ;61 o16 popaw ;61 o16 pusha ;60 o16 pushaw ;60 o16 [286inst] arpl r16/m,r16 ;63 clts ;0F,06 imul r16,[r16/m,]imm16 ;69 o16 jmp far m32 ;FF/5 o16 lar r16,r16/m ;0F,02 o16 lgdt m ;0F,01/2 lidt m ;0F,01/3 lldt r16/m ;0F,00/2 lmsw r16/m ;0F,01/6 lsl r16,r16/m ;0F,03 o16 ltr r16/m ;0F,00/3 push imm8 ;6A push imm16 ;68 o16 rcl r8/m8,imm8 ;C0/2 rcl r16/m16,imm8 ;C1/2 o16 rcr r8/m8,imm8 ;C0/3 rcr r16/m16,imm8 ;C1/3 o16 rol r8/m8,imm8 ;C0/0 rol r16/m16,imm8 ;C1/0 o16 ror r8/m8,imm8 ;C0/1 ror r16/m16,imm8 ;C1/1 o16 sal r8/m8,imm8 ;C0/4 sal r16/m16,imm8 ;C1/4 o16 sar r8/m8,imm8 ;C0/7 sar r16/m16,imm8 ;C1/7 o16 shl r8/m8,imm8 ;C0/4 shl r16/m16,imm8 ;C1/4 o16 shr r8/m8,imm8 ;C0/5 shr r16/m16,imm8 ;C1/5 o16 sgdt m ;0F,01/0 sidt m ;0F,01/1 sldt r16/m ;0F,00/0 smsw r16/m ;0F,01/4 str r16/m ;0F,00/1 verr r16/m ;0F,00/4 verw r16/m ;0F,00/5 [386inst] adc r32/m,r32 ;11 o32 adc r32,r32/m ;13 o32 adc r32/m32,imm32 ;81/2 o32 add r32/m32,imm32 ;81/0 o32 add r32/m,r32 ;01 o32 add r32,r32/m ;03 o32 and r32/m,r32 ;21 o32 and r32,r32/m ;23 o32 and r32/m32,imm32 ;81/4 o32 bound r32,m ;62 o32 bsf r16,r16/m ;0F,BC o16 bsf r32,r32/m ;0F,BC o32 bsr r16,r16/m ;0F,BD o16 bsr r32,r32/m ;0F,BD o32 bt r16/m,r16 ;0F,A3 o16 bt r32/m,r32 ;0F,A3 o32 bt r16/m16,imm8 ;0F,BA/4 o16 bt r32/m32,imm8 ;0F,BA/4 o32 btc r16/m,r16 ;0F,BB o16 btc r32/m,r32 ;0F,BB o32 btc r16/m16,imm8 ;0F,BA/7 o16 btc r32/m32,imm8 ;0F,BA/7 o32 btr r16/m,r16 ;0F,B3 o16 btr r32/m,r32 ;0F,B3 o32 btr r16/m16,imm8 ;0F,BA/6 o16 btr r32/m32,imm8 ;0F,BA/6 o32 bts r16/m,r16 ;0F,AB o16 bts r32/m,r32 ;0F,AB o32 bts r16/m16,imm8 ;0F,BA/5 o16 bts r32/m32,imm8 ;0F,BA/5 o32 call rel32 ;E8 o32 call r32/m32 ;FF/2 o32 call far imm48 ;9A o32 call far m48 ;FF/3 o32 cdq ;99 o32 cmp r32/m32,imm32 ;81/7 o32 cmp r32/m,r32 ;39 o32 cmp r32,r32/m ;3B o32 cmpsd ;A7 o32 cwde ;98 o32 dec r32/m32 ;FF/1 o32 div r32/m32 ;F7/6 o32 idiv r32/m32 ;F7/7 o32 imul r32/m32 ;F7/5 o32 imul r16,r16/m ;0F,AF o16 imul r32,r32/m ;0F,AF o32 imul r32,[r32/m,]imm32 ;69 o32 in eax,imm8 ;E5 o32 in eax,dx ;ED o32 inc r32/m32 ;FF/0 o32 insd ;6D o32 iretd ;CF o32 ja rel32 ;0F,87 o32 jae rel32 ;0F,83 o32 jb rel32 ;0F,82 o32 jbe rel32 ;0F,86 o32 jc rel32 ;0F,82 o32 jcxz rel8 ;E3 o16 jecxz rel8 ;E3 o32 je rel32 ;0F,84 o32 jg rel32 ;0F,8F o32 jge rel32 ;0F,8D o32 jl rel32 ;0F,8C o32 jle rel32 ;0F,8E o32 jna rel32 ;0F,86 o32 jnae rel32 ;0F,82 o32 jnb rel32 ;0F,83 o32 jnbe rel32 ;0F,87 o32 jnc rel32 ;0F,83 o32 jne rel32 ;0F,85 o32 jng rel32 ;0F,8E o32 jnge rel32 ;0F,8C o32 jnl rel32 ;0F,8D o32 jnle rel32 ;0F,8F o32 jno rel32 ;0F,81 o32 jnp rel32 ;0F,8B o32 jns rel32 ;0F,89 o32 jnz rel32 ;0F,85 o32 jo rel32 ;0F,80 o32 jp rel32 ;0F,8A o32 jpe rel32 ;0F,8A o32 jpo rel32 ;0F,8B o32 js rel32 ;0F,88 o32 jz rel32 ;0F,84 o32 jmp rel32 ;E9 o32 jmp r32/m32 ;FF/4 o32 jmp far imm48 ;EA o32 jmp far m48 ;FF/5 o32 lar r32,r32/m ;0F,02 o32 lea r32,m ;8D o32 lds r32,m ;C5 o32 lss r16,m ;0F,B2 o16 lss r32,m ;0F,B2 o32 les r32,m ;C4 o32 lfs r16,m ;C4 o16 lfs r32,m ;0F,B4 o32 lgs r16,m ;0F,B5 o16 lgs r32,m ;0F,B5 o32 lodsd ;AD o32 lsl r32,r32/m ;0F,03 o32 mov r32/m,r32 ;89 o32 mov r32,r32/m ;8B o32 mov r32,imm32 ;B8 o32 mov r32/m32,imm32 ;C7 o32 mov r32,cr ;0F,20 mov cr,r32 ;0F,22 mov r32,dr ;0F,21 mov dr,r32 ;0F,23 movsd ;A5 o32 movsx r16,r8/m ;0F,BE o16 movsx r32,r8/m ;0F,BE o32 movsx r32,r16/m ;0F,BF movzx r16,r8/m ;0F,B6 o16 movzx r32,r8/m ;0F,B6 o32 movzx r32,r16/m ;0F,B7 mul r32/m32 ;F7/4 o32 neg r32/m32 ;F7/3 o32 not r32/m32 ;F7/2 o32 or r32/m32,imm32 ;81/1 o32 or r32/m,r32 ;09 o32 or r32,r32/m ;0B o32 out imm8,eax ;E7 o32 out dx,eax ;EF o32 outsd ;6F o32 pop m32 ;8F/0 o32 pop r32 ;58 o32 pop fs ;0F,A1 o16 pop gs ;0F,A9 o16 popad ;61 o32 popfd ;9D o32 push m32 ;FF/6 o32 push r32 ;50 o32 push imm32 ;68 o32 push fs ;0F,A0 o16 push gs ;0F,A8 o16 pushad ;60 o32 pushfd ;9C o32 rcl r32/m32,cl ;D3/2 o32 rcl r32/m32,imm8 ;C1/2 o32 rcr r32/m32,cl ;D3/3 o32 rcr r32/m32,imm8 ;C1/3 o32 rol r32/m32,cl ;D3/0 o32 rol r32/m32,imm8 ;C1/0 o32 ror r32/m32,cl ;D3/1 o32 ror r32/m32,imm8 ;C1/1 o32 sal r32/m32,cl ;D3/4 o32 sal r32/m32,imm8 ;C1/4 o32 sar r32/m32,cl ;D3/7 o32 sar r32/m32,imm8 ;C1/7 o32 shl r32/m32,cl ;D3/4 o32 shl r32/m32,imm8 ;C1/4 o32 shr r32/m32,cl ;D3/5 o32 shr r32/m32,imm8 ;C1/5 o32 sbb r32/m32,imm32 ;81/3 o32 sbb r32/m,r32 ;19 o32 sbb r32,r32/m ;1B o32 scasd ;AF o32 seta r8/m ;0F,97 setae r8/m ;0F,93 setb r8/m ;0F,92 setbe r8/m ;0F,96 setc r8/m ;0F,92 sete r8/m ;0F,94 setg r8/m ;0F,9F setge r8/m ;0F,9D setl r8/m ;0F,9C setle r8/m ;0F,9E setna r8/m ;0F,96 setnae r8/m ;0F,92 setnb r8/m ;0F,93 setnbe r8/m ;0F,97 setnc r8/m ;0F,93 setne r8/m ;0F,95 setng r8/m ;0F,9E setnge r8/m ;0F,9C setnl r8/m ;0F,9D setnle r8/m ;0F,9F setno r8/m ;0F,91 setnp r8/m ;0F,9B setns r8/m ;0F,99 setnz r8/m ;0F,95 seto r8/m ;0F,90 setp r8/m ;0F,9A setpe r8/m ;0F,9A setpo r8/m ;0F,9B sets r8/m ;0F,98 setz r8/m ;0F,94 shld [r16/m,]r16,imm8 ;0F,A4 o16 shld [r32/m,]r32,imm8 ;0F,A4 o32 shld [r16/m,]r16,cl ;0F,A5 o16 shld [r32/m,]r32,cl ;0F,A5 o32 shrd [r16/m,]r16,imm8 ;0F,AC o16 shrd [r32/m,]r32,imm8 ;0F,AC o32 shrd [r16/m,]r16,cl ;0F,AD o16 shrd [r32/m,]r32,cl ;0F,AD o32 stosd ;AB o32 sub r32/m32,imm32 ;81/5 o32 sub r32/m,r32 ;29 o32 sub r32,r32/m ;2B o32 test r32/m32,imm32 ;F7/0 o32 test r32/m,r32 ;85 o32 test r32,r32/m ;85 o32 xchg r32/m,r32 ;87 o32 xchg r32,r32/m ;87 o32 xor r32/m32,imm32 ;81/6 o32 xor r32/m,r32 ;31 o32 xor r32,r32/m ;33 o32 [087inst] f2xm1 ;D9,F0 fabs ;D9,E1 fadd m32 ;D8/0 fadd m64 ;DC/0 fadd st0,st ;D8,C0 fadd st,st0 ;DC,C0 faddp st,st0 ;DE,C0 faddp ;DE,C1 fbld m80 ;DF/4 fbstp m80 ;DF/6 fchs ;D9,E0 fclex ;9B,DB,E2 fcom m32 ;D8/2 fcom m64 ;DC/2 fcom st ;D8,D0 fcom ;D8,D1 fcomp m32 ;D8/3 fcomp m64 ;DC/3 fcomp st ;D8,D8 fcomp ;D8,D9 fcompp ;DE,D9 fdecstp ;D9,F6 fdiv m32 ;D8/6 fdiv m64 ;DC/6 fdiv st0,st ;D8,F0 fdiv st,st0 ;DC,F8 fdivp st,st0 ;DE,F8 fdivp ;DE,F9 fdivr m32 ;D8/7 fdivr m64 ;DC/7 fdivr st0,st ;D8,F8 fdivr st,st0 ;DC,F0 fdivrp st,st0 ;DE,F0 fdivrp ;DE,F1 ffree st ;DD,C0 fiadd m16 ;DE/0 fiadd m32 ;DA/0 ficom m16 ;DE/2 ficom m32 ;DA/2 ficomp m16 ;DE/3 ficomp m32 ;DA/3 fidiv m16 ;DE/6 fidiv m32 ;DA/6 fidivr m16 ;DE/7 fidivr m32 ;DA/7 fild m16 ;DF/0 fild m32 ;DB/0 fild m64 ;DF/5 fimul m16 ;DE/1 fimul m32 ;DA/1 fincstp ;D9,F7 finit ;9B,DB,E3 fist m16 ;DF/2 fist m32 ;DB/2 fistp m16 ;DF/3 fistp m32 ;DB/3 fistp m64 ;DF/7 fisub m16 ;DE/4 fisub m32 ;DA/4 fisubr m16 ;DE/5 fisubr m32 ;DA/5 fld m32 ;D9/0 fld m64 ;DD/0 fld m80 ;DB/5 fld st ;D9,C0 fld1 ;D9,E8 fldcw m ;D9/5 fldenv m ;D9/4 fldenv16 m ;D9/4 o16 fldl2e ;D9,EA fldl2t ;D9,E9 fldlg2 ;D9,EC fldln2 ;D9,ED fldpi ;D9,EB fldz ;D9,EE fmul m32 ;D8/1 fmul m64 ;DC/1 fmul st0,st ;D8,C8 fmul st,st0 ;DC,C8 fmulp st,st0 ;DE,C8 fmulp ;DE,C9 fnop ;D9,D0 fnclex ;DB,E2 fninit ;DB,E3 fnsave m ;DD/6 fnsave16 m ;DD/6 o16 fnstcw m ;D9/7 fnstenv m ;D9/6 fnstenv16 m ;D9/6 o16 fnstsw m ;DD/7 fpatan ;D9,F3 fprem ;D9,F8 fptan ;D9,F2 frndint ;D9,FC frstor m ;DD/4 frstor16 m ;DD/4 o16 fsave m ;9B,DD/6 fsave16 m ;9B,DD/6 o16 fscale ;D9,FD fsqrt ;D9,FA fst m32 ;D9/2 fst m64 ;DD/2 fst st ;DD,D0 fstp m32 ;D9/3 fstp m64 ;DD/3 fstp m80 ;DB/7 fstp st ;DD,D8 fstcw m ;9B,D9/7 fstenv m ;9B,D9/6 fstenv16 m ;9B,D9/6 o16 fstsw m ;9B,DD/7 fsub m32 ;D8/4 fsub m64 ;DC/4 fsub st0,st ;D8,E0 fsub st,st0 ;DC,E8 fsubp st,st0 ;DE,E8 fsubp ;DE,E9 fsubr m32 ;D8/5 fsubr m64 ;DC/4 fsubr st0,st ;D8,E8 fsubr st,st0 ;DC,E0 fsubrp st,st0 ;DE,E0 fsubrp ;DE,E1 ftst ;D9,E4 fwait ;9B fxam ;D9,E5 fxch st ;D9,C8 fxch ;D9,C9 fxtract ;D9,F4 fyl2x ;D9,F1 fyl2xp1 ;D9,F9 [287inst] fnstsw ax ;DF,E0 fstsw ax ;9B,DF,E0 [387inst] fcos ;D9,FF fldenv32 m ;D9/4 o32 fnsave32 m ;DD/6 o32 fnstenv32 m ;D9/6 o32 fprem1 ;D9,F5 frstor32 m ;DD/4 o32 fsave32 m ;9B,DD/6 o32 fsin ;D9,FE fsincos ;D9,FB fstenv32 m ;9B,D9/6 o32 fucom st ;DD,E0 fucom ;DD,E1 fucomp st ;DD,E8 fucomp ;DD,E9 fucompp ;DA,E9 [486inst] bswap r32 ;0F,C8 cmpxchg r8/m,r8 ;0F,B0 cmpxchg r16/m,r16 ;0F,B1 o16 cmpxchg r32/m,r32 ;0F,B1 o32 invd ;0F,08 invlpg m ;0F,01/7 wbinvd ;0F,09 xadd r8/m,r8 ;0F,C0 xadd r16/m,r16 ;0F,C1 o16 xadd r32/m,r32 ;0F,C1 o32 [486_recinst] cpuid ;0F,A2 [pentiuminst] cmpxchg8b m ;0F,C7 rdmsr ;0F,32 rdtsc ;0F,31 rsm ;0F,AA wrmsr ;0F,30 [pproinst] cmova r16,r16/m ;0F,47 o16 cmovae r16,r16/m ;0F,43 o16 cmovb r16,r16/m ;0F,42 o16 cmovbe r16,r16/m ;0F,46 o16 cmovc r16,r16/m ;0F,42 o16 cmove r16,r16/m ;0F,44 o16 cmovg r16,r16/m ;0F,4F o16 cmovge r16,r16/m ;0F,4D o16 cmovl r16,r16/m ;0F,4C o16 cmovle r16,r16/m ;0F,4E o16 cmovna r16,r16/m ;0F,46 o16 cmovnae r16,r16/m ;0F,42 o16 cmovnb r16,r16/m ;0F,43 o16 cmovnbe r16,r16/m ;0F,47 o16 cmovnc r16,r16/m ;0F,43 o16 cmovne r16,r16/m ;0F,45 o16 cmovng r16,r16/m ;0F,4E o16 cmovnge r16,r16/m ;0F,4C o16 cmovnl r16,r16/m ;0F,4D o16 cmovnle r16,r16/m ;0F,4F o16 cmovno r16,r16/m ;0F,41 o16 cmovnp r16,r16/m ;0F,4B o16 cmovns r16,r16/m ;0F,49 o16 cmovnz r16,r16/m ;0F,45 o16 cmovo r16,r16/m ;0F,40 o16 cmovp r16,r16/m ;0F,4A o16 cmovpe r16,r16/m ;0F,4A o16 cmovpo r16,r16/m ;0F,4B o16 cmovs r16,r16/m ;0F,48 o16 cmovz r16,r16/m ;0F,44 o16 cmova r32,r32/m ;0F,47 o32 cmovae r32,r32/m ;0F,43 o32 cmovb r32,r32/m ;0F,42 o32 cmovbe r32,r32/m ;0F,46 o32 cmovc r32,r32/m ;0F,42 o32 cmove r32,r32/m ;0F,44 o32 cmovg r32,r32/m ;0F,4F o32 cmovge r32,r32/m ;0F,4D o32 cmovl r32,r32/m ;0F,4C o32 cmovle r32,r32/m ;0F,4E o32 cmovna r32,r32/m ;0F,46 o32 cmovnae r32,r32/m ;0F,42 o32 cmovnb r32,r32/m ;0F,43 o32 cmovnbe r32,r32/m ;0F,47 o32 cmovnc r32,r32/m ;0F,43 o32 cmovne r32,r32/m ;0F,45 o32 cmovng r32,r32/m ;0F,4E o32 cmovnge r32,r32/m ;0F,4C o32 cmovnl r32,r32/m ;0F,4D o32 cmovnle r32,r32/m ;0F,4F o32 cmovno r32,r32/m ;0F,41 o32 cmovnp r32,r32/m ;0F,4B o32 cmovns r32,r32/m ;0F,49 o32 cmovnz r32,r32/m ;0F,45 o32 cmovo r32,r32/m ;0F,40 o32 cmovp r32,r32/m ;0F,4A o32 cmovpe r32,r32/m ;0F,4A o32 cmovpo r32,r32/m ;0F,4B o32 cmovs r32,r32/m ;0F,48 o32 cmovz r32,r32/m ;0F,44 o32 fcmovb st0,st ;DA,C0 fcmovbe st0,st ;DA,C8 fcmove st0,st ;DA,D0 fcmovu st0,st ;DA,D8 fcmovnb st0,st ;DB,C0 fcmovne st0,st ;DB,C8 fcmovnbe st0,st ;DB,D0 fcmovnu st0,st ;DB,D8 fcomi st0,st ;DB,F0 fcomip st0,st ;DF,F0 fucomi st0,st ;DB,E8 fucomip st0,st ;DF,E8 rdpmc ;0F,33 ud2 ;0F,0B [piiinst] emms ;0F,77 movd mm,r32/m ;0F,6E movd r32/m,mm ;0F,7E movq mm,mm/m ;0F,6F movq mm/m,mm ;0F,7F packsswb mm,mm/m ;0F,63 packssdw mm,mm/m ;0F,6B packuswb mm,mm/m ;0F,67 paddb mm,mm/m ;0F,FC paddw mm,mm/m ;0F,FD paddd mm,mm/m ;0F,FE paddsb mm,mm/m ;0F,EC paddsw mm,mm/m ;0F,ED paddusb mm,mm/m ;0F,DC paddusw mm,mm/m ;0F,DD pand mm,mm/m ;0F,DB pandn mm,mm/m ;0F,DF pcmpeqb mm,mm/m ;0F,74 pcmpeqw mm,mm/m ;0F,75 pcmpeqd mm,mm/m ;0F,76 pcmpgtb mm,mm/m ;0F,64 pcmpgtw mm,mm/m ;0F,65 pcmpgtd mm,mm/m ;0F,66 pmaddwd mm,mm/m ;0F,F5 pmulhw mm,mm/m ;0F,E5 pmullw mm,mm/m ;0F,D5 por mm,mm/m ;0F,Eb psllw mm,mm/m ;0F,F1 psllw mm,imm8 ;0F,71/6 pslld mm,mm/m ;0F,F2 pslld mm,imm8 ;0F,72/6 psllq mm,mm/m ;0F,F3 psllq mm,imm8 ;0F,73/7 psraw mm,mm/m ;0F,E1 psraw mm,imm8 ;0F,71/4 psrad mm,mm/m ;0F,E2 psrad mm,imm8 ;0F,72/4 psrlw mm,mm/m ;0F,D1 psrlw mm,imm8 ;0F,71/2 psrld mm,mm/m ;0F,D2 psrld mm,imm8 ;0F,72/2 psrlq mm,mm/m ;0F,D3 psrlq mm,imm8 ;0F,73/2 psubb mm,mm/m ;0F,F8 psubw mm,mm/m ;0F,F9 psubd mm,mm/m ;0F,FA psubsb mm,mm/m ;0F,E8 psubsw mm,mm/m ;0F,E9 psubusb mm,mm/m ;0F,D8 psubusw mm,mm/m ;0F,D9 punpckhbw mm,mm/m ;0F,68 punpckhwd mm,mm/m ;0F,69 punpckhdq mm,mm/m ;0F,6A punpcklbw mm,mm/m ;0F,60 punpcklwd mm,mm/m ;0F,61 punpckldq mm,mm/m ;0F,62 pxor mm,mm/m ;0F,EF sysenter ;0F,34 sysexit ;0F,35 [k6iiinst] femms ;0F,0E pavgusb mm,mm/m ;0F,0F,BF pf2id mm,mm/m ;0F,0F,1D pfacc mm,mm/m ;0F,0F,AE pfadd mm,mm/m ;0F,0F,9E pfcmpeq mm,mm/m ;0F,0F,B0 pfcmpge mm,mm/m ;0F,0F,90 pfcmpgt mm,mm/m ;0F,0F,A0 pfmax mm,mm/m ;0F,0F,A4 pfmin mm,mm/m ;0F,0F,94 pfmul mm,mm/m ;0F,0F,B4 pfrcp mm,mm/m ;0F,0F,96 pfrcpit1 mm,mm/m ;0F,0F,A6 pfrcpit2 mm,mm/m ;0F,0F,B6 pfrsqit1 mm,mm/m ;0F,0F,A7 pfrsqrt mm,mm/m ;0F,0F,97 pfsub mm,mm/m ;0F,0F,9A pfsubr mm,mm/m ;0F,0F,AA pi2fd mm,mm/m ;0F,0F,0D pmulhrw mm,mm/m ;0F,0F,B7 prefetch m8 ;0F,0D [piiiinst] addps xmm,xmm/m ;0F,58 addss xmm,xmm/m ;F3,0F,58 andps xmm,xmm/m ;0F,54 andnps xmm,xmm/m ;0F,55 cmpps xmm,xmm/m,imm8 ;0F,C2 cmpss xmm,xmm/m,imm8 ;F3,0F,C2 comiss xmm,xmm/m ;0F,2F cvtpi2ps xmm,mm/m ;0F,2A cvtps2pi mm,xmm/m ;0F,2D cvtsi2ss xmm,r32/m ;F3,0F,2A cvtss2si r32,xmm/m ;F3,0F,2D cvttps2pi mm,xmm/m ;0F,2C cvttss2si r32,xmm/m ;F3,0F,2C divps xmm,xmm/m ;0F,5E divss xmm,xmm/m ;F3,0F,5E fxrstor m ;0F,AE/1 fxsave m ;0F,AE/0 ldmxcsr m ;0F,AE/2 maskmovq mm,mm ;0F,F7 maxps xmm,xmm/m ;0F,5F maxss xmm,xmm/m ;F3,0F,5F minps xmm,xmm/m ;0F,5D minss xmm,xmm/m ;F3,0F,5D movaps xmm,xmm/m ;0F,28 movaps xmm/m,xmm ;0F,29 movntq m,mm ;0F,E7 movntps m,xmm ;0F,2B movhps xmm,m ;0F,16 movhps m,xmm ;0F,17 movhlps xmm,xmm ;0F,12 movlps xmm,m ;0F,12 movlps m,xmm ;0F,13 movlhps xmm,xmm ;0F,16 movmskps r32,xmm ;0F,50 movss xmm,xmm/m ;F3,0F,10 movss xmm/m,xmm ;F3,0F,11 mulps xmm,xmm/m ;0F,59 mulss xmm,xmm/m ;F3,0F,59 orps xmm,xmm/m ;0F,56 pavgb mm,mm/m ;0F,E0 pavgw mm,mm/m ;0F,E3 pextrw r32,mm,imm8 ;0F,C5 pinsrw mm,r32/m,imm8 ;0F,C4 pmaxsw mm,mm/m ;0F,EE pmaxub mm,mm/m ;0F,DE pminsw mm,mm/m ;0F,EA pminub mm,mm/m ;0F,DA pmovmskb r32,mm ;0F,D7 pmulhuw mm,mm/m ;0F,E4 prefetcht0 m ;0F,18/1 prefetcht1 m ;0F,18/2 prefetcht2 m ;0F,18/3 prefetchnta m ;0F,18/0 psadbw mm,mm/m ;0F,F6 pshufw mm,mm/m,imm8 ;0F,70 sfence ;0F,AE/7 subps xmm,xmm/m ;0F,5C subss xmm,xmm/m ;F3,0F,5C shufps xmm,xmm/m,imm8 ;0F,C6 sqrtps xmm,xmm/m ;0F,51 sqrtss xmm,xmm/m ;F3,0F,51 stmxcsr m ;0F,AE/3 ucomiss xmm,xmm/m ;0F,2E unpckhps xmm,xmm/m ;0F,15 unpcklps xmm,xmm/m ;0F,14 xorps xmm,xmm/m ;0F,57 [pivinst] addpd xmm,xmm/m ;66,0F,58 addsd xmm,xmm/m ;F2,0F,58 andpd xmm,xmm/m ;66,0F,54 andnpd xmm,xmm/m ;66,0F,55 clflush m ;0F,AE/7 cmppd xmm,xmm/m,imm8 ;66,0F,C2 cmpsd xmm,xmm/m,imm8 ;F2,0F,C2 comisd xmm,xmm/m ;66,0F,2F cvtdq2pd xmm,xmm/m ;F3,0F,E6 cvtdq2ps xmm,xmm/m ;0F,5B cvtpd2dq xmm,xmm/m ;F2,0F,E6 cvtpd2pi mm,xmm/m ;66,0F,2D cvtpd2ps xmm,xmm/m ;66,0F,5A cvtpi2pd xmm,mm/m ;66,0F,2A cvtps2dq xmm,xmm/m ;66,0F,5B cvtps2pd xmm,xmm/m ;0F,5A cvtsd2si r32,xmm/m ;F2,0F,2D cvtsd2ss xmm,xmm/m ;F2,0F,5A cvtsi2sd xmm,r32/m ;F2,0F,2A cvtss2sd xmm,xmm/m ;F3,0F,5A cvttpd2pi mm,xmm/m ;66,0F,2C cvttpd2dq xmm,xmm/m ;66,0F,E6 cvttps2dq xmm,xmm/m ;F3,0F,5B cvttsd2si r32,xmm/m ;F2,0F,2C divpd xmm,xmm/m ;66,0F,5E divsd xmm,xmm/m ;F2,0F,5E lfence ;0F,AE/5 maxpd xmm,xmm/m ;66,0F,5F maxsd xmm,xmm/m ;F2,0F,5F maskmovdqu xmm,xmm ;66,0F,F7 mfence ;0F,AE/6 minpd xmm,xmm/m ;66,0F,5D minsd xmm,xmm/m ;F2,0F,5D movapd xmm,xmm/m ;66,0F,28 movapd xmm/m,xmm ;66,0F,29 movdqa xmm,xmm/m ;66,0F,6F movdqa xmm/m,xmm ;66,0F,7F movdqu xmm,xmm/m ;F3,0F,6F movdqu xmm/m,xmm ;F3,0F,7F movhpd xmm,m ;66,0F,16 movhpd m,xmm ;66,0F,17 movlpd xmm,m ;66,0F,12 movlpd m,xmm ;66,0F,13 movmskpd r32,xmm ;66,0F,50 movntpd m,xmm ;66,0F,2B movntdq m,xmm ;66,0F,E7 movnti m,r32 ;0F,C3 movq2dq xmm,mm ;F3,0F,D6 movdq2q mm,xmm ;F2,0F,D6 movsd xmm,xmm/m ;F2,0F,10 movsd xmm/m,xmm ;F2,0F,11 movupd xmm,xmm/m ;66,0F,10 movupd xmm/m,xmm ;66,0F,11 mulpd xmm,xmm/m ;66,0F,59 mulsd xmm,xmm/m ;F2,0F,59 orpd xmm,xmm/m ;66,0F,56 paddq mm,mm/m ;0F,D4 paddq xmm,xmm/m ;66,0F,D4 pause ;F3,90 pmuludq mm,mm/m ;0F,F4 pmuludq xmm,xmm/m ;66,0F,F4 pshuflw xmm,xmm/m,imm8 ;F2,0F,70 pshufhw xmm,xmm/m,imm8 ;F3,0F,70 pshufd xmm,xmm/m,imm8 ;66,0F,70 pslldq xmm,imm8 ;66,0F,73/7 psrldq xmm,imm8 ;66,0F,73/3 psubq mm,mm/m ;0F,FB psubq xmm,xmm/m ;66,0F,FB punpckhqdq xmm,xmm/m ;66,0F,6D punpcklqdq xmm,xmm/m ;66,0F,6C shufpd xmm,xmm/m,imm8 ;66,0F,C6 sqrtpd xmm,xmm/m ;66,0F,51 sqrtsd xmm,xmm/m ;F2,0F,51 subpd xmm,xmm/m ;66,0F,5C subsd xmm,xmm/m ;F2,0F,5C ucomisd xmm,xmm/m ;66,0F,2E unpckhpd xmm,xmm/m ;66,0F,15 unpcklpd xmm,xmm/m ;66,0F,14 xorpd xmm,xmm/m ;66,0F,57 $; PIV Xtended SSE instructions extrapolated from MMX unit movd xmm,r32/m ;66,0F,6E movd r32/m,xmm ;66,0F,7E movq xmm,xmm/m ;F3,0F,7E movq xmm/m,xmm ;66,0F,D6 packsswb xmm,xmm/m ;66,0F,63 packssdw xmm,xmm/m ;66,0F,6B packuswb xmm,xmm/m ;66,0F,67 paddb xmm,xmm/m ;66,0F,FC paddw xmm,xmm/m ;66,0F,FD paddd xmm,xmm/m ;66,0F,FE paddsb xmm,xmm/m ;66,0F,EC paddsw xmm,xmm/m ;66,0F,ED paddusb xmm,xmm/m ;66,0F,DC paddusw xmm,xmm/m ;66,0F,DD pand xmm,xmm/m ;66,0F,DB pandn xmm,xmm/m ;66,0F,DF pcmpeqb xmm,xmm/m ;66,0F,74 pcmpeqw xmm,xmm/m ;66,0F,75 pcmpeqd xmm,xmm/m ;66,0F,76 pcmpgtb xmm,xmm/m ;66,0F,64 pcmpgtw xmm,xmm/m ;66,0F,65 pcmpgtd xmm,xmm/m ;66,0F,66 pmaddwd xmm,xmm/m ;66,0F,F5 pmulhw xmm,xmm/m ;66,0F,E5 pmullw xmm,xmm/m ;66,0F,D5 por xmm,xmm/m ;66,0F,Eb psllw xmm,xmm/m ;66,0F,F1 psllw xmm,imm8 ;66,0F,71/6 pslld xmm,xmm/m ;66,0F,F2 pslld xmm,imm8 ;66,0F,72/6 psllq xmm,xmm/m ;66,0F,F3 psllq xmm,imm8 ;66,0F,73/7 psraw xmm,xmm/m ;66,0F,E1 psraw xmm,imm8 ;66,0F,71/4 psrad xmm,xmm/m ;66,0F,E2 psrad xmm,imm8 ;66,0F,72/4 psrlw xmm,xmm/m ;66,0F,D1 psrlw xmm,imm8 ;66,0F,71/2 psrld xmm,xmm/m ;66,0F,D2 psrld xmm,imm8 ;66,0F,72/2 psrlq xmm,xmm/m ;66,0F,D3 psrlq xmm,imm8 ;66,0F,73/2 psubb xmm,xmm/m ;66,0F,F8 psubw xmm,xmm/m ;66,0F,F9 psubd xmm,xmm/m ;66,0F,FA psubsb xmm,xmm/m ;66,0F,E8 psubsw xmm,xmm/m ;66,0F,E9 psubusb xmm,xmm/m ;66,0F,D8 psubusw xmm,xmm/m ;66,0F,D9 punpckhbw xmm,xmm/m ;66,0F,68 punpckhwd xmm,xmm/m ;66,0F,69 punpckhdq xmm,xmm/m ;66,0F,6A punpcklbw xmm,xmm/m ;66,0F,60 punpcklwd xmm,xmm/m ;66,0F,61 punpckldq xmm,xmm/m ;66,0F,62 pxor xmm,xmm/m ;66,0F,EF $end $; Revision history: $; $; 2002/10/04: bugfixed popfw instruction and imm far jumps $; 2002/09/14: bugfixed some instruction opcodes, that where described incorrectly in the Borland Turbo Assembler Quick Reference $; 2002/07/28: bugfixed imm far calls $; 2002/05/22: renamed aovr and oovr prefixes to asovr and osovr prefixes $; 2002/05/18: added 3D Now! - support for AMD K6-II, added i386 aovr, oovr prefixes $; 2002/04/20: added segment override prefixes $; 2001/11/12: added Pentium, Pentium pro, Pentium II (MMX), Pentium III (SSE) and Pentium IV (SSE2) support $; 2001/11/01: Opcode Map for CodeX Assembler was set up the first time - with 087,287,387,086,186,286,386,486 and recent 486 support