linker64.ld 733 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. OUTPUT_ARCH(riscv)
  2. ENTRY(_start)
  3. BASE_ADDRESS = 0x80200000;
  4. SECTIONS
  5. {
  6. /* Load the kernel at this address: "." means the current address */
  7. . = BASE_ADDRESS;
  8. start = .;
  9. .text : {
  10. stext = .;
  11. *(.text.entry)
  12. *(.text .text.*)
  13. . = ALIGN(4K);
  14. etext = .;
  15. }
  16. .rodata : {
  17. srodata = .;
  18. *(.rodata .rodata.*)
  19. . = ALIGN(4K);
  20. erodata = .;
  21. }
  22. .data : {
  23. sdata = .;
  24. *(.data .data.*)
  25. *(.sdata .sdata.*)
  26. edata = .;
  27. }
  28. .stack : {
  29. *(.bss.stack)
  30. }
  31. .bss : {
  32. sbss = .;
  33. *(.bss .bss.*)
  34. *(.sbss .sbss.*)
  35. ebss = .;
  36. }
  37. . = ALIGN(4K);
  38. PROVIDE(end = .);
  39. }