From 9a77780158842db6e4aa098f5027e030fc3bd878 Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Fri, 22 May 2020 23:08:09 -0700 Subject: 6384 --- html/060read.subx.html | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'html/060read.subx.html') diff --git a/html/060read.subx.html b/html/060read.subx.html index 140a0e95..dee513d3 100644 --- a/html/060read.subx.html +++ b/html/060read.subx.html @@ -16,10 +16,10 @@ a { color:inherit; } * { font-size:12pt; font-size: 1em; } .subxComment { color: #005faf; } .subxS2Comment { color: #8a8a8a; } -.LineNr { } -.subxS1Comment { color: #0000af; } .subxTest { color: #5f8700; } .subxFunction { color: #af5f00; text-decoration: underline; } +.LineNr { } +.subxS1Comment { color: #0000af; } .Normal { color: #000000; background-color: #c6c6c6; padding-bottom: 1px; } .subxMinorFunction { color: #875f5f; } .Constant { color: #008787; } @@ -99,7 +99,7 @@ if ('onhashchange' in window) { 38 # As a reminder, a stream looks like this: 39 # write: int # index at which to write to next 40 # read: int # index at which to read next - 41 # data: (array byte) # prefixed by length as usual + 41 # data: (array byte) # prefixed by size as usual 42 43 == code 44 # instruction effective address register displacement immediate @@ -131,7 +131,7 @@ if ('onhashchange' in window) { 70 8b/copy 1/mod/*+disp8 5/rm32/ebp . . . 6/r32/esi 8/disp8 . # copy *(ebp+8) to esi 71 # edi = s 72 8b/copy 1/mod/*+disp8 5/rm32/ebp . . . 7/r32/edi 0xc/disp8 . # copy *(ebp+12) to esi - 73 # eax = _buffer-4(out = &s->data[s->write], outend = &s->data[s->length], + 73 # eax = _buffer-4(out = &s->data[s->write], outend = &s->data[s->size], 74 # in = &f->data[f->read], inend = &f->data[f->write]) 75 # . . push &f->data[f->write] 76 8b/copy 0/mod/indirect 6/rm32/esi . . . 0/r32/eax . . # copy *esi to eax @@ -141,7 +141,7 @@ if ('onhashchange' in window) { 80 8b/copy 1/mod/*+disp8 6/rm32/esi . . . 0/r32/eax 4/disp8 . # copy *(esi+4) to eax 81 8d/copy-address 1/mod/*+disp8 4/rm32/sib 6/base/esi 0/index/eax . 0/r32/eax 0xc/disp8 . # copy esi+eax+12 to eax 82 50/push-eax - 83 # . . push &s->data[s->length] + 83 # . . push &s->data[s->size] 84 8b/copy 1/mod/*+disp8 7/rm32/edi . . . 0/r32/eax 8/disp8 . # copy *(edi+8) to eax 85 8d/copy-address 1/mod/*+disp8 4/rm32/sib 7/base/edi 0/index/eax . 0/r32/eax 0xc/disp8 . # copy edi+eax+12 to eax 86 50/push-eax @@ -177,8 +177,8 @@ if ('onhashchange' in window) { 116 89/copy 3/mod/direct 5/rm32/ebp . . . 4/r32/esp . . # copy esp to ebp 117 # . save registers 118 51/push-ecx -119 # eax = _buffer-4(out, outend, &s->data[0], &s->data[s->length]) -120 # . . push &s->data[s->length] +119 # eax = _buffer-4(out, outend, &s->data[0], &s->data[s->size]) +120 # . . push &s->data[s->size] 121 8b/copy 1/mod/*+disp8 5/rm32/ebp . . 0/r32/eax 0x10/disp8 . # copy *(ebp+16) to eax 122 8b/copy 0/mod/indirect 0/rm32/eax . . . 1/r32/ecx . . # copy *eax to ecx 123 8d/copy-address 1/mod/*+disp8 4/rm32/sib 0/base/eax 1/index/ecx . 1/r32/ecx 4/disp8 . # copy eax+ecx+4 to ecx @@ -269,14 +269,14 @@ if ('onhashchange' in window) { 208 8b/copy 1/mod/*+disp8 5/rm32/ebp . . . 6/r32/esi 0xc/disp8 . # copy *(ebp+12) to esi 209 # eax = s->write 210 8b/copy 0/mod/indirect 6/rm32/esi . . . 0/r32/eax . . # copy *esi to eax -211 # edx = s->length +211 # edx = s->size 212 8b/copy 1/mod/*+disp8 6/rm32/esi . . . 2/r32/edx 8/disp8 . # copy *(esi+8) to edx -213 # syscall(read, fd, &s->data[s->write], s->length - s->write) +213 # syscall(read, fd, &s->data[s->write], s->size - s->write) 214 # . . fd: ebx 215 8b/copy 1/mod/*+disp8 5/rm32/ebp . . . 3/r32/ebx 8/disp8 . # copy *(ebp+8) to ebx 216 # . . data: ecx = &s->data[s->write] 217 8d/copy-address 1/mod/*+disp8 4/rm32/sib 6/base/esi 0/index/eax . 1/r32/ecx 0xc/disp8 . # copy esi+eax+12 to ecx -218 # . . size: edx = s->length - s->write +218 # . . size: edx = s->size - s->write 219 29/subtract 3/mod/direct 2/rm32/edx . . . 0/r32/eax . . # subtract eax from edx 220 # . . syscall 221 b8/copy-to-eax 3/imm32/read @@ -298,14 +298,14 @@ if ('onhashchange' in window) { 237 # 1 (what we have above): 238 # ecx = s 239 # eax = s->write -240 # edx = s->length +240 # edx = s->size 241 # # syscall 242 # ecx = lea ecx+eax+12 243 # edx = sub edx eax 244 # 245 # 2: 246 # ecx = s -247 # edx = s->length +247 # edx = s->size 248 # ecx = &s->data 249 # # syscall 250 # ecx = add ecx, s->write @@ -492,7 +492,7 @@ if ('onhashchange' in window) { 431 0/imm32 432 # current read index 433 0/imm32 -434 # length +434 # size 435 8/imm32 436 # data 437 00 00 00 00 00 00 00 00 # 8 bytes -- cgit 1.4.1-2-gfad0