Remove PageTable.opIndex and .opIndexAssign, use .entry
This commit is contained in:
1 parent
476ae7d6fd
commit
707d42bec4
3 files changed
+25
-36
No files matched your search
+3
-19
@@ -126,25 +126,9 @@ struct PageTable
|
||||
* @param level
|
||||
* Page table level (0-4).
|
||||
*/
|
||||
public PageTableEntry opIndex(T)(T address, ulong level)
|
||||
public PageTableEntry * entry(T)(T address, ulong level)
|
||||
{
|
||||
return entries[pt_index(cast(ulong)address, level)];
|
||||
}
|
||||
|
||||
/**
|
||||
* Assign the PageTableEntry for the given address and page table level.
|
||||
*
|
||||
* @param pte
|
||||
* PageTableEntry value to assign.
|
||||
* @param address
|
||||
* Address to look up the page table entry (ulong or pointer).
|
||||
* @param level
|
||||
* Page table level (0-4).
|
||||
*/
|
||||
public PageTableEntry opIndexAssign(T)(PageTableEntry pte, T address, ulong level)
|
||||
{
|
||||
entries[pt_index(cast(ulong)address, level)] = pte;
|
||||
return pte;
|
||||
return &entries[index(cast(ulong)address, level)];
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -156,7 +140,7 @@ struct PageTable
|
||||
* @param level
|
||||
* Page table level (0-4).
|
||||
*/
|
||||
public ulong pt_index(T)(T address, ulong level)
|
||||
public ulong index(T)(T address, ulong level)
|
||||
{
|
||||
return (cast(ulong)address >> (39u - (9u * level))) & 0x1FFu;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user