1,15 → 1,24 |
; Decoding cache L1,L2,L3 for Intel |
|
decodecache32: |
|
call decodecache |
|
|
|
decodecache24: |
|
shr eax, 8 |
|
call decodecache |
|
shr eax, 8 |
|
call decodecache |
|
shr eax, 8 |
|
|
decodecache: |
|
comp0: |
16,8 → 25,117 |
cmp al, 00h |
je L000 |
|
;-------L2 |
|
comp6: |
cmp al, 06h |
je kk6 |
|
comp7: |
cmp al, 08h |
je kk7 |
|
comp61: ;+1 |
cmp al, 09h |
je kk61 |
|
comp11: |
cmp al, 0Ah |
je kk11 |
je Ld8 |
|
|
comp13: |
cmp al, 0Ch |
je kk13 |
je Ld16 |
|
comp62: ;+1 |
cmp al, 0Dh |
je kk15 |
|
comp63: ;+1 |
cmp al, 0Eh |
je kk63 |
|
comp14: |
cmp al, 10h |
je kk14 |
je Ld16 |
|
|
comp8: |
cmp al, 15h |
je kk8 |
|
comp48: |
cmp al, 1Ah |
je kk48 |
je L96 |
|
comp64: ;+1 |
cmp al, 21h |
je kk23 |
|
|
comp39: |
cmp al, 22h |
je kk39 |
je L305 |
|
comp40: |
cmp al, 23h |
je kk40 |
je L31 |
|
comp41: |
cmp al, 25h |
je kk41 |
je L32 |
|
comp42: |
cmp al, 29h |
je kk42 |
je L34 |
|
comp16: |
cmp al, 2Ch |
je kk16 |
je Ld32 |
|
comp10: |
cmp al, 30h |
je kk10 |
|
comp18: |
cmp al, 39h |
je kk18 |
je L128 |
|
comp49: |
cmp al, 3Ah |
je kk49 |
je L192 |
|
comp19: |
cmp al, 3Bh |
je kk19 |
je L128 |
|
comp22: |
cmp al, 3Ch |
je kk22 |
je L256 |
|
comp50: |
cmp al, 3Dh |
je kk50 |
je L384 |
|
comp51: |
cmp al, 3Eh |
je kk51 |
je L512 |
|
comp1: |
cmp al, 41h |
je kk1 |
43,261 → 161,334 |
je kk5 |
|
|
;------------L1 inst |
comp6: |
cmp al, 06h |
je kk6 |
comp53: |
cmp al, 46h |
je kk53 |
je L34 |
|
comp7: |
cmp al, 08h |
je kk7 |
comp54: |
cmp al, 47h |
je kk54 |
je L38 |
|
comp8: |
cmp al, 15h |
je kk8 |
comp65: ;+1 |
cmp al, 48h |
je kk26 |
|
|
comp9: |
cmp al, 77h |
je kk9 |
comp55: |
cmp al, 49h |
je kk55 |
je L34 |
|
comp56: |
cmp al, 4Ah |
je kk56 |
je L36 |
|
comp10: |
cmp al, 30h |
je kk10 |
comp57: |
cmp al, 4Bh |
je kk57 |
je L38 |
|
;---------------L1 data |
comp11: |
cmp al, 0Ah |
je kk11 |
comp58: |
cmp al, 4Ch |
je kk58 |
je L312 |
|
comp59: |
cmp al, 4Dh |
je kk59 |
je L316 |
|
comp60: |
cmp al, 4Eh |
je kk60 |
je L6144 |
|
comp36: |
cmp al, 60h |
je kk36 |
je Ld16 |
|
comp12: |
cmp al, 66h |
je kk12 |
je Ld8 |
|
comp13: |
cmp al, 0Ch |
je kk13 |
|
comp14: |
cmp al, 10h |
je kk14 |
|
comp15: |
cmp al, 67h |
je kk15 |
je Ld16 |
|
comp16: |
cmp al, 2Ch |
je kk16 |
|
comp17: |
cmp al, 68h |
je kk17 |
je Ld32 |
|
;-------L2 |
comp18: |
cmp al, 39h |
je kk18 |
comp33: |
cmp al, 70h |
je kk33 |
je Li12 |
|
comp19: |
cmp al, 3Bh |
je kk19 |
comp34: |
cmp al, 71h |
je kk34 |
je Li16 |
|
comp35: |
cmp al, 72h |
je kk35 |
je Li32 |
|
|
comp47: |
cmp al, 73h |
je kk47 |
je Li64 |
|
|
comp9: |
cmp al, 77h |
je kk9 |
|
|
|
comp37: |
cmp al, 78h |
je kk37 |
je L1024 |
|
|
|
comp20: |
cmp al, 79h |
je kk20 |
je L128 |
|
comp21: |
cmp al, 81h |
je kk21 |
|
comp22: |
cmp al, 3Ch |
je kk22 |
|
comp23: |
cmp al, 7Ah |
je kk23 |
je L256 |
|
|
comp26: |
cmp al, 7Bh |
je kk26 |
je L512 |
|
comp29: |
cmp al, 7Ch |
je kk29 |
je L1024 |
|
comp38: |
cmp al, 7Dh |
je kk38 |
je L2048 |
|
comp24: |
cmp al, 7Eh |
je kk24 |
je L256 |
|
comp52: |
cmp al, 7Fh |
je kk52 |
je L512 |
|
|
comp66: |
cmp al, 80h |
je kk21 |
|
|
comp21: |
cmp al, 81h |
je kk21 |
je L128 |
|
|
comp25: |
cmp al, 82h |
je kk25 |
je L256 |
|
comp26: |
cmp al, 7Bh |
je kk26 |
|
comp27: |
cmp al, 83h |
je kk27 |
je L512 |
|
comp28: |
cmp al, 86h |
je kk28 |
|
comp29: |
cmp al, 7Ch |
je kk29 |
|
comp30: |
cmp al, 84h |
je kk30 |
je L1024 |
|
comp31: |
cmp al, 87h |
je kk31 |
|
comp32: |
cmp al, 85h |
je kk32 |
je L2048 |
|
;-----L1 Trace instr |
comp28: |
cmp al, 86h |
je kk28 |
je L512 |
|
comp33: |
cmp al, 70h |
je kk33 |
comp31: |
cmp al, 87h |
je kk31 |
je L1024 |
|
comp34: |
cmp al, 71h |
je kk34 |
|
comp35: |
cmp al, 72h |
je kk35 |
|
;----New codes |
|
comp36: |
cmp al, 60h |
je kk36 |
|
comp37: |
cmp al, 78h |
je kk37 |
|
comp38: |
cmp al, 7Dh |
je kk38 |
|
;---- L3 |
comp39: |
cmp al, 22h |
je kk39 |
|
comp40: |
cmp al, 23h |
je kk40 |
|
comp41: |
cmp al, 25h |
je kk41 |
|
comp42: |
cmp al, 29h |
je kk42 |
|
comp43: |
cmp al, 88h |
je kk43 |
je L32 |
|
comp44: |
cmp al, 89h |
je kk44 |
je L34 |
|
comp45: |
cmp al, 8Ah |
je kk45 |
je L38 |
|
comp46: |
cmp al, 8Dh |
je kk46 |
je L34 |
|
;============= v. 2.04 |
comp47: |
cmp al, 73h |
je kk47 |
|
comp48: |
cmp al, 1Ah |
je kk48 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
;comp67: ;+1 |
;cmp al, 208 ; D0h |
;je kk39 |
|
comp49: |
cmp al, 3Ah |
je kk49 |
;comp68: ;+1 |
;cmp al, 209 ; D1h |
;je kk68 |
|
comp50: |
cmp al, 3Dh |
je kk50 |
;comp69: ;+1 |
;cmp al, 210 ; D2h |
;je kk43 |
|
comp51: |
cmp al, 3Eh |
je kk51 |
;comp70: ;+1 |
;cmp al, 214 ; D6h |
;je kk40 |
|
comp52: |
cmp al, 7Fh |
je kk52 |
;comp71: ;+1 |
;cmp al, 215 ; D7h |
;je kk41 |
|
comp53: |
cmp al, 46h |
je kk53 |
;comp72: ;+1 |
;cmp al, 216 ;D8h |
;je kk42 |
|
comp54: |
cmp al, 47h |
je kk54 |
;comp73: ;+1 |
;cmp al, 220 ; DCh |
;je kk73 |
|
comp55: |
cmp al, 49h |
je kk55 |
;comp74: ;+1 |
;cmp al, 221 ;DDh |
;je kk74 |
|
comp56: |
cmp al, 4Ah |
;comp75: ;+1 |
;cmp al, 222 ;DEh |
;je kk56 |
|
;comp76: ;+1 |
;cmp al, 226 ;E2h |
;je kk76 |
|
;comp77: ;+1 |
;cmp al, 227 ;E3h |
;je kk55 |
|
;comp78: ;+1 |
;cmp al, 228 ;E4h |
;je kk57 |
|
;comp79: ;+1 |
;cmp al, 234 ;EAh |
;je kk79 |
|
;comp80: ;+1 |
;cmp al, 235 ;EBh |
;je kk80 |
|
;comp81: ;+1 |
;cmp al, 236 ;ECh |
;je kk81 |
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
comp67: ;+1 |
cmp al, 0D0h |
je kk39 |
|
comp68: ;+1 |
cmp al, 0D1h |
je kk68 |
|
comp69: ;+1 |
cmp al, 0D2h |
je kk43 |
|
comp70: ;+1 |
cmp al, 0D6h |
je kk40 |
|
comp71: ;+1 |
cmp al, 0D7h |
je kk41 |
|
comp72: ;+1 |
cmp al, 0D8h |
je kk42 |
|
comp73: ;+1 |
cmp al, 0DCh |
je kk73 |
|
comp74: ;+1 |
cmp al, 0DDh |
je kk74 |
|
comp75: ;+1 |
cmp al, 0DEh |
je kk56 |
|
comp57: |
cmp al, 4Bh |
comp76: ;+1 |
cmp al, 0E2h |
je kk76 |
|
comp77: ;+1 |
cmp al, 0E3h |
je kk55 |
|
comp78: ;+1 |
cmp al, 0E4h |
je kk57 |
|
comp58: |
cmp al, 4Ch |
je kk58 |
comp79: ;+1 |
cmp al, 0EAh |
je kk79 |
|
comp59: |
cmp al, 4Dh |
je kk59 |
comp80: ;+1 |
cmp al, 0EBh |
je kk80 |
|
ret |
comp81: ;+1 |
cmp al, 0ECh |
je kk81 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
jne L000 |
;------------------ |
|
kk1: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L128 |
|
kk2: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L256 |
|
kk3: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L512 |
|
kk4: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L1024 |
|
kk5: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L2048 |
;;;;;;;;;;;;;;;;; |
;;;;;;;;;;;;;;;;; L1 instr |
kk6: |
mov [wayli], 4 |
mov [lineli], 32 |
318,6 → 509,32 |
mov [lineli], 64 |
jmp Li16 |
|
kk61: |
mov [wayli], 4 ;+1 |
mov [lineli], 64 |
jmp Li32 |
|
|
kk33: |
mov [wayli], 8 |
;mov [lineli], 32 |
jmp Li12 |
|
kk34: |
mov [wayli], 8 |
;mov [lineli], 32 |
jmp Li16 |
|
kk35: |
mov [wayli], 8 |
;mov [lineli], 32 |
jmp Li32 |
|
kk47: |
mov [wayli], 8 |
;mov [lineli], 32 |
jmp Li64 |
|
kk10: |
mov [wayli], 8 |
mov [lineli], 64 |
359,75 → 576,111 |
mov [wayld], 4 |
mov [lineld], 64 |
jmp Ld32 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
kk18: |
mov [wayl2], 4 |
mov [linel2], 64 |
jmp L128 |
|
kk63: |
mov [wayld], 6 |
mov [lineld], 64 |
jmp Ld24 |
|
kk36: |
mov [wayld], 8 |
mov [lineld], 64 |
jmp Ld16 |
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;; L2 |
kk19: |
mov [wayl2], 2 |
mov [linel2], 64 |
jmp L128 |
|
kk20: |
mov [wayl2], 8 |
kk52: |
mov [wayl2], 2 |
mov [linel2], 64 |
jmp L128 |
jmp L512 |
|
kk21: |
mov [wayl2], 8 |
kk1: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L128 |
|
kk22: |
kk2: |
mov [wayl2], 4 |
mov [linel2], 64 |
mov [linel2], 32 |
jmp L256 |
|
kk23: |
mov [wayl2], 8 |
mov [linel2], 64 |
jmp L256 |
|
kk24: |
mov [wayl2], 8 |
mov [linel2], 128 |
jmp L256 |
|
kk25: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L256 |
|
kk26: |
mov [wayl2], 8 |
mov [linel2], 64 |
kk3: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L512 |
|
kk27: |
mov [wayl2], 8 |
kk4: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L512 |
jmp L1024 |
|
kk5: |
mov [wayl2], 4 |
mov [linel2], 32 |
jmp L2048 |
|
kk18: |
mov [wayl2], 4 |
mov [linel2], 64 |
jmp L128 |
|
kk22: |
mov [wayl2], 4 |
mov [linel2], 64 |
jmp L256 |
|
kk28: |
mov [wayl2], 4 |
mov [linel2], 64 |
jmp L512 |
|
kk29: |
mov [wayl2], 8 |
kk51: |
mov [wayl2], 4 |
mov [linel2], 64 |
jmp L512 |
|
kk37: |
mov [wayl2], 4 |
mov [linel2], 64 |
jmp L1024 |
|
kk30: |
kk48: |
mov [wayl2], 6 |
mov [linel2], 64 |
jmp L96 |
|
kk49: |
mov [wayl2], 6 |
mov [linel2], 64 |
jmp L192 |
|
kk50: |
mov [wayl2], 6 |
mov [linel2], 64 |
jmp L384 |
|
kk21: |
mov [wayl2], 8 |
mov [linel2], 32 |
jmp L1024 |
jmp L128 |
|
kk31: |
kk27: |
mov [wayl2], 8 |
mov [linel2], 64 |
mov [linel2], 32 |
jmp L512 |
|
kk30: |
mov [wayl2], 8 |
mov [linel2], 32 |
jmp L1024 |
|
kk32: |
434,37 → 687,52 |
mov [wayl2], 8 |
mov [linel2], 32 |
jmp L2048 |
;;;;;;;;;;;;;;;;;;;;;;;;; |
kk33: |
mov [wayli], 8 |
;mov [lineli], 32 |
jmp Li12 |
|
kk34: |
mov [wayli], 8 |
;mov [lineli], 32 |
jmp Li16 |
kk20: |
mov [wayl2], 8 |
mov [linel2], 64 |
jmp L128 |
|
kk35: |
mov [wayli], 8 |
;mov [lineli], 32 |
jmp Li32 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
kk36: |
mov [wayld], 8 |
mov [lineld], 64 |
jmp Ld16 |
kk23: |
mov [wayl2], 8 |
mov [linel2], 64 |
jmp L256 |
|
kk37: |
mov [wayl2], 4 |
kk26: |
mov [wayl2], 8 |
mov [linel2], 64 |
jmp L512 |
|
kk29: |
mov [wayl2], 8 |
mov [linel2], 64 |
jmp L1024 |
|
kk31: |
mov [wayl2], 8 |
mov [linel2], 64 |
jmp L1024 |
|
kk38: |
mov [wayl2], 8 |
mov [linel2], 64 |
jmp L2048 |
;;;;;;;;;;;;;;;;;;;;;;;;; |
|
kk24: |
mov [wayl2], 8 |
mov [linel2], 128 |
jmp L256 |
|
kk65: |
mov [wayl2], 12 |
mov [linel2], 64 |
jmp L3072 |
|
kk60: |
mov [wayl2], 24 |
mov [linel2], 64 |
jmp L6144 |
;;;;;;;;;;;;;;;;;;;;;;;;; L3 |
kk39: |
mov [wayl3], 4 |
mov [linel3], 64 |
500,75 → 768,81 |
mov [linel3], 64 |
jmp L38 |
|
kk46: |
mov [wayl3], 12 |
mov [linel3], 128 |
jmp L33 |
;;;;;;;;;;;;;;;;;;;;;; |
kk47: |
mov [wayli], 8 |
;mov [lineli], 32 |
jmp Li64 |
|
kk48: |
mov [wayl2], 6 |
mov [linel2], 64 |
jmp L96 |
|
kk49: |
mov [wayl2], 6 |
mov [linel2], 64 |
jmp L192 |
|
kk50: |
mov [wayl2], 6 |
mov [linel2], 64 |
jmp L384 |
|
kk51: |
mov [wayl2], 4 |
mov [linel2], 64 |
jmp L512 |
|
kk52: |
mov [wayl2], 2 |
mov [linel2], 64 |
jmp L512 |
|
kk53: |
mov [wayl3], 4 |
mov [linel3], 64 |
jmp L34 |
|
kk68: |
mov [wayl3], 4 |
mov [linel3], 64 |
jmp L31 |
|
kk54: |
mov [wayl3], 8 |
mov [linel3], 64 |
jmp L38 |
|
kk55: |
mov [wayl3], 16 |
kk74: |
mov [wayl3], 12 |
mov [linel3], 64 |
jmp L34 |
jmp L33 |
|
kk73: |
mov [wayl3], 12 |
mov [linel3], 64 |
jmp L315 |
|
kk56: |
mov [wayl3], 12 |
mov [linel3], 64 |
jmp L36 |
|
kk58: |
mov [wayl3], 12 |
mov [linel3], 64 |
jmp L312 |
|
kk46: |
mov [wayl3], 12 |
mov [linel3], 128 |
jmp L33 |
|
kk76: |
mov [wayl3], 16 |
mov [linel3], 64 |
jmp L32 |
|
kk55: |
mov [wayl3], 16 |
mov [linel3], 64 |
jmp L34 |
|
kk57: |
mov [wayl3], 16 |
mov [linel3], 64 |
jmp L38 |
|
kk58: |
mov [wayl3], 12 |
kk59: |
mov [wayl3], 16 |
mov [linel3], 64 |
jmp L316 |
|
kk79: |
mov [wayl3], 24 |
mov [linel3], 64 |
jmp L312 |
|
kk59: |
mov [wayl3], 16 |
kk80: |
mov [wayl3], 24 |
mov [linel3], 64 |
jmp L316 |
jmp L318 |
|
kk81: |
mov [wayl3], 24 |
mov [linel3], 64 |
jmp L324 |
|
;------------------ |
Li8: |
mov [L1i], 8 |
598,6 → 872,10 |
mov [L1d], 16 |
jmp L000 |
|
Ld24: |
mov [L1d], 24 |
jmp L000 |
|
Ld32: |
mov [L1d], 32 |
jmp L000 |
634,6 → 912,14 |
mov [L2], 2048 |
jmp L000 |
|
L3072: |
mov [L2], 3072 |
jmp L000 |
|
L6144: |
mov [L2], 6144 |
jmp L000 |
|
L305: |
mov [L3], 512 |
jmp L000 |
642,6 → 928,10 |
mov [L3], 1024 |
jmp L000 |
|
L315: |
mov [L3], 1536 |
jmp L000 |
|
L32: |
mov [L3], 2048 |
jmp L000 |
668,9 → 958,15 |
|
L316: |
mov [L3], 16384 |
;jmp L000 |
jmp L000 |
|
L318: |
mov [L3], 18432 |
jmp L000 |
|
L324: |
mov [L3], 24576 |
jmp L000 |
|
L000: |
ret |
ret |