i386/79091: [i386] [patch] Small optimization for i386/support.s

Andrey Simonenko simon at comsys.ntu-kpi.kiev.ua
Fri Jul 16 14:54:47 UTC 2010

On Wed, Jul 14, 2010 at 07:07:03AM +0000, remko at FreeBSD.org wrote:
> Synopsis: [i386] [patch] Small optimization for i386/support.s
> State-Changed-From-To: open->feedback
> State-Changed-By: remko
> State-Changed-When: Wed Jul 14 07:06:16 UTC 2010
> State-Changed-Why: 
> Hello, the code in question is using 'rcx' now instead of 'ecx'to restore
> the registers. That might have solved your problem can you please have a look at that please and confirm whether it's still relevant?

That PR was about optimization for suword() and similar functions for
i386 and amd64 architectures.  %ecx is used for i386 and %rcx is used
for amd64, but the idea is the same.  I do not understand why these
lines are necessary for suword-like functions, all fuword-like functions
do not reinitialize %ecx and %rcx registers after MOV instruction that
potentially can generate some exception (eg. page fault).

More information about the freebsd-i386 mailing list