Current Path : /usr/local/lib/perl5/site_perl/5.8.9/mach/sys/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/local/lib/perl5/site_perl/5.8.9/mach/sys/fnv_hash.ph |
require '_h2ph_pre.ph'; no warnings 'redefine'; unless(defined(&FNV1_32_INIT)) { sub FNV1_32_INIT () { (( &Fnv32_t) 33554467);} } unless(defined(&FNV1_64_INIT)) { sub FNV1_64_INIT () { (( &Fnv64_t) 0xcbf29ce484222325);} } unless(defined(&FNV_32_PRIME)) { sub FNV_32_PRIME () { (( &Fnv32_t) 0x1000193);} } unless(defined(&FNV_64_PRIME)) { sub FNV_64_PRIME () { (( &Fnv64_t) 0x100000001b3);} } unless(defined(&fnv_32_buf)) { sub fnv_32_buf { my($buf,$len,$hval) = @_; eval q({ &const &u_int8_t * &s = ( &const &u_int8_t *)$buf; &while ($len-- != 0) { $hval *= &FNV_32_PRIME; $hval ^= * &s++; } $hval; }); } } unless(defined(&fnv_32_str)) { sub fnv_32_str { my($str,$hval) = @_; eval q({ &const &u_int8_t * &s = ( &const &u_int8_t *)$str; &Fnv32_t &c; &while (( &c = * &s++) != 0) { $hval *= &FNV_32_PRIME; $hval ^= &c; } $hval; }); } } unless(defined(&fnv_64_buf)) { sub fnv_64_buf { my($buf,$len,$hval) = @_; eval q({ &const &u_int8_t * &s = ( &const &u_int8_t *)$buf; &while ($len-- != 0) { $hval *= &FNV_64_PRIME; $hval ^= * &s++; } $hval; }); } } unless(defined(&fnv_64_str)) { sub fnv_64_str { my($str,$hval) = @_; eval q({ &const &u_int8_t * &s = ( &const &u_int8_t *)$str; &u_register_t &c; &while (( &c = * &s++) != 0) { $hval *= &FNV_64_PRIME; $hval ^= &c; } $hval; }); } } 1;