From 86351aafe218a7386f6578be3c4da3edcdcb0c98 Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Fri, 12 Jun 2020 07:57:27 -0700 Subject: 6513 --- html/091write-int.subx.html | 147 ++++++++++++++++++++++---------------------- 1 file changed, 73 insertions(+), 74 deletions(-) (limited to 'html/091write-int.subx.html') diff --git a/html/091write-int.subx.html b/html/091write-int.subx.html index 476927ee..05bffafb 100644 --- a/html/091write-int.subx.html +++ b/html/091write-int.subx.html @@ -102,84 +102,83 @@ if ('onhashchange' in window) { 42 68/push "write-int: out of space\n"/imm32 43 68/push 2/imm32/stderr 44 # . . call - 45 e8/call _write/disp32 + 45 e8/call _write/disp32 46 # . . discard args 47 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp 48 # . syscall(exit, 1) 49 bb/copy-to-ebx 1/imm32 - 50 b8/copy-to-eax 1/imm32/exit - 51 cd/syscall 0x80/imm8 - 52 # never gets here - 53 - 54 test-write-int-single: - 55 # - check that write-int writes to first int of 'stream' - 56 # setup - 57 # . clear-stream(_test-stream) - 58 # . . push args - 59 68/push _test-stream/imm32 - 60 # . . call - 61 e8/call clear-stream/disp32 - 62 # . . discard args - 63 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 4/imm32 # add to esp - 64 # write-int(_test-stream, "abcd") - 65 # . . push args - 66 68/push 0x64636261/imm32 - 67 68/push _test-stream/imm32 - 68 # . . call - 69 e8/call write-int/disp32 - 70 # . . discard args - 71 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp - 72 # check-stream-equal(_test-stream, "abcd", msg) - 73 # . . push args - 74 68/push "F - test-write-int-single"/imm32 - 75 68/push "abcd"/imm32 - 76 68/push _test-stream/imm32 - 77 # . . call - 78 e8/call check-stream-equal/disp32 - 79 # . . discard args - 80 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 0xc/imm32 # add to esp - 81 # . end - 82 c3/return - 83 - 84 test-write-byte-buffered-multiple: - 85 # - check that write-int correctly appends multiple writes - 86 # setup - 87 # . clear-stream(_test-stream) - 88 # . . push args - 89 68/push _test-stream/imm32 - 90 # . . call - 91 e8/call clear-stream/disp32 - 92 # . . discard args - 93 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 4/imm32 # add to esp - 94 # write-int(_test-stream, "abcd") - 95 # . . push args - 96 68/push 0x64636261/imm32 - 97 68/push _test-stream/imm32 - 98 # . . call - 99 e8/call write-int/disp32 -100 # . . discard args -101 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp -102 # write-int(_test-stream, "efgh") -103 # . . push args -104 68/push 0x68676665/imm32 -105 68/push _test-stream/imm32 -106 # . . call -107 e8/call write-int/disp32 -108 # . . discard args -109 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp -110 # check-stream-equal(_test-stream, "abcdefgh", msg) -111 # . . push args -112 68/push "F - test-write-byte-buffered-multiple"/imm32 -113 68/push "abcdefgh"/imm32 -114 68/push _test-stream/imm32 -115 # . . call -116 e8/call check-stream-equal/disp32 -117 # . . discard args -118 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 0xc/imm32 # add to esp -119 # . end -120 c3/return -121 -122 # . . vim:nowrap:textwidth=0 + 50 e8/call syscall_exit/disp32 + 51 # never gets here + 52 + 53 test-write-int-single: + 54 # - check that write-int writes to first int of 'stream' + 55 # setup + 56 # . clear-stream(_test-stream) + 57 # . . push args + 58 68/push _test-stream/imm32 + 59 # . . call + 60 e8/call clear-stream/disp32 + 61 # . . discard args + 62 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 4/imm32 # add to esp + 63 # write-int(_test-stream, "abcd") + 64 # . . push args + 65 68/push 0x64636261/imm32 + 66 68/push _test-stream/imm32 + 67 # . . call + 68 e8/call write-int/disp32 + 69 # . . discard args + 70 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp + 71 # check-stream-equal(_test-stream, "abcd", msg) + 72 # . . push args + 73 68/push "F - test-write-int-single"/imm32 + 74 68/push "abcd"/imm32 + 75 68/push _test-stream/imm32 + 76 # . . call + 77 e8/call check-stream-equal/disp32 + 78 # . . discard args + 79 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 0xc/imm32 # add to esp + 80 # . end + 81 c3/return + 82 + 83 test-write-byte-buffered-multiple: + 84 # - check that write-int correctly appends multiple writes + 85 # setup + 86 # . clear-stream(_test-stream) + 87 # . . push args + 88 68/push _test-stream/imm32 + 89 # . . call + 90 e8/call clear-stream/disp32 + 91 # . . discard args + 92 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 4/imm32 # add to esp + 93 # write-int(_test-stream, "abcd") + 94 # . . push args + 95 68/push 0x64636261/imm32 + 96 68/push _test-stream/imm32 + 97 # . . call + 98 e8/call write-int/disp32 + 99 # . . discard args +100 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp +101 # write-int(_test-stream, "efgh") +102 # . . push args +103 68/push 0x68676665/imm32 +104 68/push _test-stream/imm32 +105 # . . call +106 e8/call write-int/disp32 +107 # . . discard args +108 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 8/imm32 # add to esp +109 # check-stream-equal(_test-stream, "abcdefgh", msg) +110 # . . push args +111 68/push "F - test-write-byte-buffered-multiple"/imm32 +112 68/push "abcdefgh"/imm32 +113 68/push _test-stream/imm32 +114 # . . call +115 e8/call check-stream-equal/disp32 +116 # . . discard args +117 81 0/subop/add 3/mod/direct 4/rm32/esp . . . . . 0xc/imm32 # add to esp +118 # . end +119 c3/return +120 +121 # . . vim:nowrap:textwidth=0 -- cgit 1.4.1-2-gfad0