5217
Couple of typos in handle.subx. We didn't notice because a missing /r32 field gets turned into 0/EAX anyway, and because ECX happens to have the same value as EAX in the specific test caller. But it's still not running as expected, now that I'm looking closely.
This commit is contained in:
parent
1b6aa10a6b
commit
61480eb76e
BIN
subx/apps/handle
BIN
subx/apps/handle
Binary file not shown.
|
@ -213,9 +213,9 @@ lookup: # h : (handle T) -> EAX : (address T)
|
|||
8b/copy 1/mod/*+disp8 5/rm32/EBP . . . 0/r32/EAX 8/disp8 . # copy *(EBP+8) to EAX
|
||||
# - inline {
|
||||
# push handle->address
|
||||
ff 6/subop/push 1/mod/*+disp8 1/rm32/ECX . . . . 4/disp8 . # push *(EAX+4)
|
||||
ff 6/subop/push 1/mod/*+disp8 0/rm32/EAX . . . . 4/disp8 . # push *(EAX+4)
|
||||
# EAX = handle->alloc_id
|
||||
8b/copy 0/mod/indirect 0/rm32/EAX . . . . . . # copy *EAX to EAX
|
||||
8b/copy 0/mod/indirect 0/rm32/EAX . . . 0/r32/EAX . . # copy *EAX to EAX
|
||||
# if (EAX != *ESP) abort
|
||||
39/compare 0/mod/indirect 4/rm32/sib 4/base/ESP 4/index/none . 0/r32/EAX . . # compare *ESP and EAX
|
||||
75/jump-if-not-equal $lookup:abort/disp8
|
||||
|
|
Loading…
Reference in New Issue