ENTRY(start)
VIRT_BASE = 0xFFFFFFFF80000000;
SECTIONS
{
. = 0x100000;
.boot :
{
*(.mbhdr)
*(.boot)
. = ALIGN(4096);
PML4 = .;
. += 0x1000;
PDPT = .;
. += 0x1000;
PD = .;
. += 0x1000;
. += 0x8000;
Stack = .;
}
. += VIRT_BASE;
.text ALIGN(0x1000) : AT(ADDR(.text) - VIRT_BASE)
{
*(.text)
*(.gnu.linkonce.t*)
}
.data ALIGN(0x1000) : AT(ADDR(.data) - VIRT_BASE)
{
*(.data)
*(.gnu.linkonce.d*)
}
.rodata ALIGN(0x1000) : AT(ADDR(.rodata) - VIRT_BASE)
{
*(.rodata)
*(.gnu.linkonce.r*)
}
low_end = . - VIRT_BASE;
.bss ALIGN(0x1000) : AT(ADDR(.bss) - VIRT_BASE)
{
*(COMMON)
*(.bss)
*(.gnu.linkonce.b*)
}
high_end = . - VIRT_BASE;
/DISCARD/ :
{
*(.comment)
*(.eh_frame)
}
}
RU5UUlkoc3RhcnQpClZJUlRfQkFTRSA9IDB4RkZGRkZGRkY4MDAwMDAwMDsKClNFQ1RJT05TCnsKCS4gPSAweDEwMDAwMDsKCgkuYm9vdCA6Cgl7CgkJKigubWJoZHIpCgkJKiguYm9vdCkKCQkuID0gQUxJR04oNDA5Nik7CgkJUE1MNCA9IC47CgkJLiArPSAweDEwMDA7CgkJUERQVCA9IC47CgkJLiArPSAweDEwMDA7CgkJUEQgPSAuOwoJCS4gKz0gMHgxMDAwOwoJCS4gKz0gMHg4MDAwOwoJCVN0YWNrID0gLjsKCX0KCgkuICs9IFZJUlRfQkFTRTsKCgkudGV4dCBBTElHTigweDEwMDApIDogQVQoQUREUigudGV4dCkgLSBWSVJUX0JBU0UpCgl7CgkJKigudGV4dCkKCQkqKC5nbnUubGlua29uY2UudCopCgl9CgoJLmRhdGEgQUxJR04oMHgxMDAwKSA6IEFUKEFERFIoLmRhdGEpIC0gVklSVF9CQVNFKQoJewoJCSooLmRhdGEpCgkJKiguZ251LmxpbmtvbmNlLmQqKQoJfQoKCS5yb2RhdGEgQUxJR04oMHgxMDAwKSA6IEFUKEFERFIoLnJvZGF0YSkgLSBWSVJUX0JBU0UpCgl7CgkJKigucm9kYXRhKQoJCSooLmdudS5saW5rb25jZS5yKikKCX0KCglsb3dfZW5kID0gLiAtIFZJUlRfQkFTRTsKCgkuYnNzIEFMSUdOKDB4MTAwMCkgOiBBVChBRERSKC5ic3MpIC0gVklSVF9CQVNFKQoJewoJCSooQ09NTU9OKQoJCSooLmJzcykKCQkqKC5nbnUubGlua29uY2UuYiopCgl9CgoJaGlnaF9lbmQgPSAuIC0gVklSVF9CQVNFOwoKCS9ESVNDQVJELyA6Cgl7CgkJKiguY29tbWVudCkKCQkqKC5laF9mcmFtZSkKCX0KfQo=