%PDF- %PDF-
Direktori : /backups/router/usr/local/lib/perl5/site_perl/mach/5.36/machine/ |
Current File : //backups/router/usr/local/lib/perl5/site_perl/mach/5.36/machine/msan.ph |
require '_h2ph_pre.ph'; no warnings qw(redefine misc); unless(defined(&_MACHINE_MSAN_H_)) { eval 'sub _MACHINE_MSAN_H_ () {1;}' unless defined(&_MACHINE_MSAN_H_); if(defined(&KMSAN)) { require 'vm/vm.ph'; require 'vm/pmap.ph'; require 'vm/vm_page.ph'; require 'machine/vmparam.ph'; eval 'sub KMSAN_ORIG_TYPE_SHIFT () {30;}' unless defined(&KMSAN_ORIG_TYPE_SHIFT); eval 'sub KMSAN_ORIG_PTR_MASK () {((1 << &KMSAN_ORIG_TYPE_SHIFT) - 1);}' unless defined(&KMSAN_ORIG_PTR_MASK); eval 'sub kmsan_md_orig_encode { my($type,$ptr) = @_; eval q({ (($type << &KMSAN_ORIG_TYPE_SHIFT) | (($ptr & &KMSAN_ORIG_PTR_MASK))); }); }' unless defined(&kmsan_md_orig_encode); eval 'sub kmsan_md_orig_decode { my($orig,$type,$ptr) = @_; eval q({ *$type = $orig >> &KMSAN_ORIG_TYPE_SHIFT; *$ptr = ($orig & &KMSAN_ORIG_PTR_MASK) | &KERNBASE; }); }' unless defined(&kmsan_md_orig_decode); eval 'sub kmsan_md_addr_to_shad { my($addr) = @_; eval q({ ($addr - &VM_MIN_KERNEL_ADDRESS + &KMSAN_SHAD_MIN_ADDRESS); }); }' unless defined(&kmsan_md_addr_to_shad); eval 'sub kmsan_md_addr_to_orig { my($addr) = @_; eval q({ ($addr - &VM_MIN_KERNEL_ADDRESS + &KMSAN_ORIG_MIN_ADDRESS); }); }' unless defined(&kmsan_md_addr_to_orig); eval 'sub kmsan_md_unsupported { my($addr) = @_; eval q({ ($addr < &VM_MIN_KERNEL_ADDRESS || $addr >= &KERNBASE); }); }' unless defined(&kmsan_md_unsupported); } } 1;