From owner-cvs-sys Fri Apr 19 01:58:43 1996 Return-Path: owner-cvs-sys Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id BAA10149 for cvs-sys-outgoing; Fri, 19 Apr 1996 01:58:43 -0700 (PDT) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id BAA10140 Fri, 19 Apr 1996 01:58:28 -0700 (PDT) Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.12/8.6.9) id SAA10195; Fri, 19 Apr 1996 18:52:32 +1000 Date: Fri, 19 Apr 1996 18:52:32 +1000 From: Bruce Evans Message-Id: <199604190852.SAA10195@godzilla.zeta.org.au> To: bde@zeta.org.au, phk@critter.tfs.com Subject: Re: cvs commit: src/sys/i386/i386 swtch.s vm_machdep.c src/sys/i386/include pcb.h src/sys/i386/isa wd.c Cc: CVS-committers@freefall.freebsd.org, cvs-all@freefall.freebsd.org, cvs-sys@freefall.freebsd.org, davidg@Root.COM, phk@freefall.freebsd.org Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >> It should save only 1 cycle on a 486 and 0.5 or 1 cycles on a Pentium :-). >> Even if the value has to be loaded from memory, it should be in a cache >Remeber that you will have to save it as well... No, you only need to save it in savectx(), or always return 1 in cpu_switch() to disambiguate the return of savectx() via cpu_switch(). >No matter how many, you would have wasted those cycles anyway.. Actually not on a pentium if it takes 0.5 cycles, because 0.5 really means 0 :-). (It means that the load uses a spare slot in one of the pipelines. `should' means that the code should be optimized for the pipelines and in particular that the extra load should be ordered carefully.) Bruce