Add "d" and "D"

This commit is contained in:
Koichi Nakamura 2020-12-29 15:59:32 +09:00
parent 6b0eeceaab
commit a6d2b4aa06
2 changed files with 12 additions and 2 deletions

View file

@ -27,3 +27,5 @@ $ cat helloworld.fs | ./plank
| ! | store | ( a addr -- ) Store value to addr |
| ? | cfetch | ( addr -- c ) Load byte from addr |
| $ | cstore | ( c addr -- ) Store byte to addr |
| d | dfetch | ( -- addr ) Get data stack pointer |
| D | dstore | ( addr -- ) Set data stack pointer |

View file

@ -6,10 +6,10 @@
00000028: 3400 2000 0100 0000 e_ehsize,e_phentsize,e_phnum,e_shentsize
00000030: 0000 0000 0100 0000 e_shnum,e_shstrndx,<phdr> PT_LOAD
00000038: 0000 0000 0080 0408 p_offset,p_vaddr=0x08048000
00000040: 0000 0000 6002 0000 p_paddr,p_filesz
00000040: 0000 0000 9002 0000 p_paddr,p_filesz
00000048: 0000 0008 0700 0000 p_memsz(128MB),PF_X|PF_W|PF_R
00000050: 0010 0000 0200 0000 p_align, <here>
00000058: 4882 0408 4881 0408 <latest:init="$">, <interpreter>(5c: key)
00000058: 7882 0408 4881 0408 <latest:init="D">, <interpreter>(5c: key)
00000060: c881 0408 f881 0408 (60: find) (64: execute)
00000068: 9881 0408 f0ff ffff (68: jump) (6c: -16)
00000070: be5c 8004 08bd 0080 (70: movl $interpreter,%esi) (75: movl $0x10048000,%ebp)
@ -76,3 +76,11 @@
00000248: 3082 0408 0124 0000 $: cstore
00000250: 5482 0408 585b 8818 popl %eax; popl %ebx; movb %bl,(%eax)
00000258: adff 2000 0000 0000 next;
00000260: 4882 0408 0164 0000 d: dfetch
00000268: 6c82 0408 89e0 50ad movl %esp,%eax; pushl %eax; next;
00000270: ff20 0000 0000 0000
00000278: 6082 0408 0144 0000 D: dstore
00000280: 8482 0408 5889 c4ad popl %eax; movl %eax,%esp; next;
00000288: ff20 0000 0000 0000