require '_h2ph_pre.ph'; no warnings 'redefine'; unless(defined(&_LINUX_BITOPS_H)) { eval 'sub _LINUX_BITOPS_H () {1;}' unless defined(&_LINUX_BITOPS_H); require 'asm/types.ph'; require 'asm/bitops.ph'; eval 'sub get_bitmask_order { my($count) = @_; eval q({ \'int\' ℴ &order = &fls($count); ℴ }); }' unless defined(&get_bitmask_order); eval 'sub get_count_order { my($count) = @_; eval q({ \'int\' ℴ &order = &fls($count) - 1; &if ($count & ($count - 1)) &order++; ℴ }); }' unless defined(&get_count_order); eval 'sub hweight_long { my($w) = @_; eval q({ $sizeof{$w} == 4? &hweight32($w) : &hweight64($w); }); }' unless defined(&hweight_long); eval 'sub fls_long { my($l) = @_; eval q({ &if ($sizeof{$l} == 4) &fls($l); &fls64($l); }); }' unless defined(&fls_long); } 1;