cvs commit: src/sys/amd64/amd64 support.S
jhb at freebsd.org
Tue Aug 15 13:14:57 UTC 2006
On Tuesday 15 August 2006 08:45, David Xu wrote:
> davidxu 2006-08-15 12:45:51 UTC
> FreeBSD src repository
> Modified files:
> sys/amd64/amd64 support.S
> Because fuword on AMD64 returns 64bit long integer -1 on fault, clear
> entire %rax to zero instead of only clearing %eax, otherwise it will
> leave garbage data in upper 32 bits.
Are you sure that 'xorl %eax,%eax' doesn't actually clear all 64 bits? This
practice of just using xorl rather than xorq is all over the place in the
amd64 code, and I think I've even seen gcc generate it, so I'm guessing that
the xorl actually is a xorq.
More information about the cvs-src