diff options
author | alc <alc@FreeBSD.org> | 2005-04-07 05:46:46 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2005-04-07 05:46:46 +0000 |
commit | 90a823ed9261212bea6160593fb2c7472be30db4 (patch) | |
tree | d550b7ad8a5b31b62bedea97bc8f8ed8c6f144bb /lib/libc | |
parent | cb1b05e7a8e4b700be8b3114e841fd0ee45c277f (diff) | |
download | FreeBSD-src-90a823ed9261212bea6160593fb2c7472be30db4.zip FreeBSD-src-90a823ed9261212bea6160593fb2c7472be30db4.tar.gz |
Eliminate an unneeded instruction that is a vestige of mechanical
translation from i386.
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/amd64/string/bzero.S | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/lib/libc/amd64/string/bzero.S b/lib/libc/amd64/string/bzero.S index 2f4ced3..d9d2a45 100644 --- a/lib/libc/amd64/string/bzero.S +++ b/lib/libc/amd64/string/bzero.S @@ -12,8 +12,6 @@ __FBSDID("$FreeBSD$"); #endif ENTRY(bzero) - movq %rsi,%rdx - cld /* set fill direction forward */ xorq %rax,%rax /* set fill data to 0 */ @@ -22,23 +20,23 @@ ENTRY(bzero) * of aligning to word boundries, etc. So we jump to a plain * unaligned set. */ - cmpq $16,%rdx + cmpq $16,%rsi jb L1 movq %rdi,%rcx /* compute misalignment */ negq %rcx andq $7,%rcx - subq %rcx,%rdx + subq %rcx,%rsi rep /* zero until word aligned */ stosb - movq %rdx,%rcx /* zero by words */ + movq %rsi,%rcx /* zero by words */ shrq $3,%rcx - andq $7,%rdx + andq $7,%rsi rep stosq -L1: movq %rdx,%rcx /* zero remainder by bytes */ +L1: movq %rsi,%rcx /* zero remainder by bytes */ rep stosb |