diff options
author | Kartik Agaram <vc@akkartik.com> | 2019-01-06 12:51:49 -0800 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2019-01-06 12:52:33 -0800 |
commit | aff782c4293e0c471505743575a1a0683a7ed096 (patch) | |
tree | 1cd15a0d670764bba76e91731085ec922898ec74 /subx/054string-equal.subx | |
parent | 458ee5e354fa55e770696fb19054d4c6bb60ead6 (diff) | |
download | mu-aff782c4293e0c471505743575a1a0683a7ed096.tar.gz |
4911
Diffstat (limited to 'subx/054string-equal.subx')
-rw-r--r-- | subx/054string-equal.subx | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/subx/054string-equal.subx b/subx/054string-equal.subx index fe6dd17b..1854403c 100644 --- a/subx/054string-equal.subx +++ b/subx/054string-equal.subx @@ -14,14 +14,6 @@ cd/syscall 0x80/imm8 string-equal: # s : string, benchmark : string -> EAX : boolean - # . prolog - 55/push-EBP - 89/copy 3/mod/direct 5/rm32/EBP . . . 4/r32/ESP . . # copy ESP to EBP - # . save registers - 51/push-ECX - 52/push-EDX - 53/push-EBX - 56/push-ESI # pseudocode: # if s->length != b->length return false # for i = 0; i < s->length; ++i @@ -34,6 +26,14 @@ string-equal: # s : string, benchmark : string -> EAX : boolean # b[i]: EBX # s[i]: EAX # + # . prolog + 55/push-EBP + 89/copy 3/mod/direct 5/rm32/EBP . . . 4/r32/ESP . . # copy ESP to EBP + # . save registers + 51/push-ECX + 52/push-EDX + 53/push-EBX + 56/push-ESI # var s/EAX : (address array byte) 8b/copy 1/mod/*+disp8 5/rm32/EBP . . . 0/r32/EAX 8/disp8 . # copy *(EBP+8) to EAX # var benchmark/EBX : (address array byte) |