From 91a5f3e10300fd84db26690095329592de0942d7 Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Fri, 11 Sep 2020 00:59:56 -0700 Subject: 6774 --- html/302stack_allocate.subx.html | 47 ++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 24 deletions(-) (limited to 'html/302stack_allocate.subx.html') diff --git a/html/302stack_allocate.subx.html b/html/302stack_allocate.subx.html index 550952fc..1029ffb0 100644 --- a/html/302stack_allocate.subx.html +++ b/html/302stack_allocate.subx.html @@ -90,33 +90,32 @@ if ('onhashchange' in window) { 33 # n must be positive 34 push-n-zero-bytes: # n: int 35 $push-n-zero-bytes:prologue: -36 89/<- *Push-n-zero-bytes-ebp 5/r32/ebp # spill ebp without affecting stack +36 89/<- *Push-n-zero-bytes-ebp 5/r32/ebp # spill ebp without affecting stack 37 89/<- %ebp 4/r32/esp 38 $push-n-zero-bytes:copy-ra: 39 # -- esp = ebp -40 50/push-eax -41 # -- esp+8 = ebp+4 -42 # -- esp+4 = ebp -43 8b/-> *(esp+4) 0/r32/eax -44 2b/subtract *(ebp+4) 4/r32/esp -45 # -- esp+4+n = ebp -46 89/<- *(esp+4) 0/r32/eax -47 58/pop-to-eax -48 # -- esp+n = ebp -49 $push-n-zero-bytes:bulk-cleaning: -50 89/<- *Push-n-zero-bytes-esp 4/r32/esp -51 81 0/subop/add *Push-n-zero-bytes-esp 4/imm32 -52 81 0/subop/add *(ebp+4) 4/imm32 -53 (zero-out *Push-n-zero-bytes-esp *(ebp+4)) # n+4 -54 $push-n-zero-bytes:epilogue: -55 8b/-> *Push-n-zero-bytes-ebp 5/r32/ebp # restore spill -56 c3/return -57 -58 == data -59 Push-n-zero-bytes-ebp: # (addr int) -60 0/imm32 -61 Push-n-zero-bytes-esp: # (addr int) -62 0/imm32 +40 89/<- *Push-n-zero-bytes-eax 0/r32/eax +41 8b/-> *esp 0/r32/eax +42 2b/subtract *(ebp+4) 4/r32/esp +43 # -- esp+n = ebp +44 89/<- *esp 0/r32/eax +45 8b/-> *Push-n-zero-bytes-eax 0/r32/eax +46 $push-n-zero-bytes:bulk-cleaning: +47 89/<- *Push-n-zero-bytes-esp 4/r32/esp +48 81 0/subop/add *Push-n-zero-bytes-esp 4/imm32 +49 81 0/subop/add *(ebp+4) 4/imm32 +50 (zero-out *Push-n-zero-bytes-esp *(ebp+4)) # n+4 +51 $push-n-zero-bytes:epilogue: +52 8b/-> *Push-n-zero-bytes-ebp 5/r32/ebp # restore spill +53 c3/return +54 +55 == data +56 Push-n-zero-bytes-ebp: # (addr int) +57 0/imm32 +58 Push-n-zero-bytes-esp: # (addr int) +59 0/imm32 +60 Push-n-zero-bytes-eax: +61 0/imm32 -- cgit 1.4.1-2-gfad0