You might think your perl is ‘compiled 64bit’, but is it really planning on using 64bit integer scalars?
integer bits: perl -MConfig -e 'print $Config{ivsize}*8' largest integer: perl -e 'print ~0' largest signed integer: perl -MConfig -e 'print( (1<<$Config{ivsize}*8-1)-1 )' smallest signed integer: perl -MConfig -e 'print -(1<<$Config{ivsize}*8-1)'