On Mon, Dec 04, 2000 at 12:17:27PM +0000, Nicholas Clark wrote: > On Sun, Dec 03, 2000 at 06:08:41PM -0600, Jarkko Hietaniemi wrote: > > On Sun, Dec 03, 2000 at 11:01:39PM +0000, Simon Cozens wrote: > > > On Sun, Dec 03, 2000 at 09:47:59PM +0000, Nicholas Clark wrote: > > > > Well, it would be if I sent it. I'm tired and making mistakes now. > > > > > > Without the patch: > > > u=2.31 s=0.38 cu=134.63 cs=11.73 scripts=261 tests=15242 > > > > > > With the patch: > > > u=2.32 s=0.3 cu=135.14 cs=11.67 scripts=261 tests=15242 > > > > > > Was it really worth it? > > > > IIRC the "efficiency" comes into play in one of Nicholas' platforms > > (ARM Linux?) where double math is really, *really*, slow, and staying > > Well, ARM most things, as most ARM cores aren't in chips with floating > point. But most digital cell phones won't run perl, so it doesn't matter A fact that is personally very embarrassing to me :-) > there. [I'm told that 80% of digital cell phones in the last year have > have ARM CPU cores in them.] Sounds about right. > > with integers if at all possible really pays off. > > > > There's also the 'correctness' aspect. If NVs smear your low order > > bits when you need need them you might get fussy about it. > > It's not going to be correct until everything in the core that does > maths is vetted. And there should be scop for speed improvement. eg Yes, the assumption 'NV better' runs deep. > --- sv.c.orig Sun Dec 3 20:01:20 2000 > +++ sv.c Mon Dec 4 11:49:12 2000 > @@ -4651,9 +4651,9 @@ > } > if (!(flags & SVp_POK) || !*SvPVX(sv)) { > if ((flags & SVTYPEMASK) < SVt_PVNV) > - sv_upgrade(sv, SVt_NV); > - SvNVX(sv) = 1.0; > - (void)SvNOK_only(sv); > + sv_upgrade(sv, SVt_IV); > + (void)SvIOK_only(sv); > + SvIVX(sv) = 1; > return; > } > d = SvPVX(sv); Looks like fodder for the bleadperl. -- $jhi++; # http://www.iki.fi/jhi/ # There is this special biologist word we use for 'stable'. # It is 'dead'. -- Jack CohenThread Previous | Thread Next