mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-05-24 22:32:28 +00:00
Add minor improvements and cleanup
This commit is contained in:
parent
9e3e985ae5
commit
feed0d2b0e
163 changed files with 2286 additions and 2245 deletions
|
@ -102,25 +102,27 @@ struct Machine *m;
|
|||
|
||||
void SetUp(void) {
|
||||
m = NewMachine();
|
||||
m->ip = 0;
|
||||
ReserveVirtual(m, 0, 4096);
|
||||
ASSERT_EQ(0x5000, m->real.i);
|
||||
m->mode = XED_MACHINE_MODE_LONG_64;
|
||||
m->cr3 = AllocateLinearPage(m);
|
||||
ReserveVirtual(m, 0, 4096, 0x0207);
|
||||
ASSERT_EQ(0x1007, Read64(m->real.p + 0x0000)); // PML4T
|
||||
ASSERT_EQ(0x2007, Read64(m->real.p + 0x1000)); // PDPT
|
||||
ASSERT_EQ(0x3007, Read64(m->real.p + 0x2000)); // PDE
|
||||
ASSERT_EQ(0x4007, Read64(m->real.p + 0x3000)); // PT
|
||||
ASSERT_EQ(0x0207, Read64(m->real.p + 0x3000)); // PT
|
||||
ASSERT_EQ(0x4000, m->real.i);
|
||||
ASSERT_EQ(1, m->memstat.reserved);
|
||||
ASSERT_EQ(4, m->memstat.committed);
|
||||
ASSERT_EQ(4, m->memstat.allocated);
|
||||
ASSERT_EQ(3, m->memstat.pagetables);
|
||||
Write64(m->sp, 4096);
|
||||
}
|
||||
|
||||
void TearDown(void) {
|
||||
FreeVirtual(m, 0, 4096);
|
||||
ASSERT_EQ(0x5000, m->real.i);
|
||||
ASSERT_EQ(0x1007, Read64(m->real.p + 0x0000)); // PML4T
|
||||
ASSERT_EQ(0x2007, Read64(m->real.p + 0x1000)); // PDPT
|
||||
ASSERT_EQ(0x3007, Read64(m->real.p + 0x2000)); // PDE
|
||||
ASSERT_EQ(0x0000, Read64(m->real.p + 0x3000)); // PT
|
||||
ASSERT_EQ(0x4000, m->realfree->i);
|
||||
ASSERT_EQ(0x1000, m->realfree->n);
|
||||
FreeMachine(m);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue