/kernel/trunk/arch/ia64/include/mm/page.h |
---|
71,6 → 71,13 |
#define AR_EXECUTE 0x1 |
#define AR_WRITE 0x2 |
#define VA_REGION_INDEX 61 |
#define VA_REGION(va) (va>>VA_REGION_INDEX) |
struct vhpt_tag_info { |
unsigned long long tag : 63; |
unsigned ti : 1; |
220,7 → 227,11 |
static inline void rr_write(index_t i, __u64 v) |
{ |
ASSERT(i < REGION_REGISTERS); |
__asm__ volatile ("mov rr[%0] = %1\n" : : "r" (i), "r" (v)); |
__asm__ volatile ( |
"mov rr[%0] = %1;;\n" |
"srlz.d;;\n" |
: |
: "r" (i), "r" (v)); |
} |
/** Read Page Table Register. |
/kernel/trunk/arch/ia64/include/mm/tlb.h |
---|
32,4 → 32,16 |
#define tlb_arch_init() |
#define tlb_print() |
#include <arch/mm/page.h> |
#include <arch/mm/asid.h> |
#include <arch/register.h> |
void tlb_fill_data(__address va,asid_t asid,vhpt_entry_t entry); |
void tlb_fill_code(__address va,asid_t asid,vhpt_entry_t entry); |
#endif |