view src/impl/vm_impl.h @ 211:c1d1721fd907

uva2ka_check_pe_types
author tobaru
date Fri, 24 Jan 2020 17:41:35 +0900
parents b8597756f701
children 7a4d299a35be
line wrap: on
line source

typedef struct vm_impl<Impl, Isa> impl vm{
    union Data* vm_impl;
    uint i;
    pte_t* pte;
    uint sz;
    pde_t* pgdir;
    char* addr;
    struct inode* ip;
    uint offset;
    uint pa;
    uint n;
    uint oldsz;
    uint newsz;
    uint a;
    int ret;
    char* mem;
    char* uva;
    pde_t* d;
    uint ap;

    __code kpt_alloc_check_impl(Type* vm_impl, __code next(...));
    __code loaduvm_ptesize_check(Type* vm_impl, __code next(int ret, ...));
    __code loaduvm_loop(Type* vm_impl, uint i, pte_t* pte, uint sz, __code next(int ret, ...));
    __code allocuvm_check_newsz(Type* vm_impl, pde_t* pgdir, uint oldsz, uint newsz, __code next(...));
    __code allocuvm_loop(Type* vm_impl, pde_t* pgdir, uint oldsz, uint newsz, uint a, __code next(...));
    __code copyuvm_check_null(Type* vm_impl, pde_t* pgdir, uint sz, __code next(...));
    __code copyuvm_loop(Type* vm_impl,pde_t* pgdir, uint sz, pde_t* d, pte_t* pte, uint pa, uint i, uint ap, char* mem, __code next(int ret, ...));
    __code clearpteu_check_ptevm_impl(Type* vm_impl, pde_t* pgdir, char* uva,  __code next(...));
    __code uva2ka_check_pe_types(Type* vm_impl, pde_t* pgdir, char* uva, __code next(...));
    __code next(...);

} vm_impl;