11.1SminouraOUTPUT_FORMAT("binary", "binary", "binary") 21.1SminouraOUTPUT_ARCH(m68k) 31.1SminouraENTRY(start) 41.1SminouraSEARCH_DIR(/usr/lib); 51.1Sminoura/*__DYNAMIC = 0; */ 61.1SminouraPROVIDE (__stack = 0); 71.1SminouraSECTIONS 81.1Sminoura{ 91.2Sisaki . = TEXTADDR; 101.1Sminoura .text : 111.9Sisaki ALIGN(2) 121.9Sisaki SUBALIGN(2) 131.1Sminoura { 141.1Sminoura CREATE_OBJECT_SYMBOLS 151.1Sminoura *(.text) 161.1Sminoura *(.rodata) 171.1Sminoura /* The next six sections are for SunOS dynamic linking. The order 181.1Sminoura is important. */ 191.1Sminoura *(.dynrel) 201.1Sminoura *(.hash) 211.1Sminoura *(.dynsym) 221.1Sminoura *(.dynstr) 231.1Sminoura *(.rules) 241.1Sminoura *(.need) 251.1Sminoura etext = .; 261.1Sminoura _etext = .; 271.1Sminoura } 281.1Sminoura .data : 291.9Sisaki ALIGN(2) 301.9Sisaki SUBALIGN(2) 311.1Sminoura { 321.1Sminoura /* The first three sections are for SunOS dynamic linking. */ 331.1Sminoura *(.dynamic) 341.1Sminoura *(.got) 351.1Sminoura *(.plt) 361.1Sminoura *(.data) 371.1Sminoura *(.linux-dynamic) /* For Linux dynamic linking. */ 381.1Sminoura CONSTRUCTORS 391.1Sminoura edata = .; 401.1Sminoura _edata = .; 411.1Sminoura } 421.7Sisaki . = TEXTADDR + TEXTDATASIZE; 431.10Sisaki 441.10Sisaki /* Place uint32_t startregs[16] out of bss */ 451.10Sisaki PROVIDE(startregs = .); 461.10Sisaki . += 0x40/* sizeof(startregs) */; 471.10Sisaki 481.1Sminoura .bss : 491.1Sminoura { 501.1Sminoura __bss_start = .; 511.1Sminoura *(.bss) 521.1Sminoura *(COMMON) 531.1Sminoura end = ALIGN(4) ; 541.1Sminoura _end = ALIGN(4) ; 551.1Sminoura } 561.1Sminoura /DISCARD/ : { *(.ident) *(.stab) *(.stabstr) } 571.1Sminoura} 581.4Sisaki 591.4SisakiASSERT(first_kbyte - TEXTADDR <= 1024, "Error: first_kbyte exceeds 1KB"); 601.6SisakiASSERT(_end <= BOOT_TEXTADDR, "Error: _end conflicts BOOT_TEXT"); 61