in reply to Re^3: use64bitint in building Perl
in thread use64bitint in building Perl

$ perl5.8.7 -V | grep 64bitint use64bitint=undef use64bitall=undef uselongdouble=undef
Looks like my IHP didn't built their perl in the way that your system's initial perl was built. I have always used a 5.8.8 that I built, but now for 5.8.9 I'm thinking about 64 bit ints and threading for the first time.

Does anyone know if building perl with 64bitint means that ALL arithmetically-processed integers are stored in 8 bytes, or only those whose value requires more than 32 bits?

Replies are listed 'Best First'.
Re^5: use64bitint in building Perl
by syphilis (Archbishop) on Dec 29, 2008 at 23:40 UTC
    Does anyone know if building perl with 64bitint means that ALL arithmetically-processed integers are stored in 8 bytes

    The IV slot will always be 8 bytes - ie *all* integers will be stored in 8 bytes.

    Cheers,
    Rob
      Since I can't think of any variables in my web site that need > 32 bits, your reply has talked me out of building with use64bitint. Thank you for helping me with this decision.

      cmac
        Furthermore note that if numbers do go over 2 GB, Perl automatically upgrades you to floats, which can represent integers precisely up to 52 bits or so. Don't put undue trust in this because some floating point routines may introduce rounding errors, and the number is not always displayed exactly, but still floating point is not immediately worse than integer arithmetic.