You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
112 lines
2.2 KiB
112 lines
2.2 KiB
7 years ago
|
OUTPUT_ARCH( "riscv" )
|
||
|
|
||
|
ENTRY( reset_vector )
|
||
|
|
||
|
SECTIONS
|
||
|
{
|
||
|
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
/* Code and read-only segment */
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
|
||
|
/* Begining of code and text segment */
|
||
|
. = 0x80000000;
|
||
|
_ftext = .;
|
||
|
PROVIDE( eprol = . );
|
||
|
|
||
|
.text :
|
||
|
{
|
||
|
*(.text.init)
|
||
|
}
|
||
|
|
||
|
/* text: Program code section */
|
||
|
.text :
|
||
|
{
|
||
|
*(.text)
|
||
|
*(.text.*)
|
||
|
*(.gnu.linkonce.t.*)
|
||
|
}
|
||
|
|
||
|
/* rodata: Read-only data */
|
||
|
.rodata :
|
||
|
{
|
||
|
*(.rdata)
|
||
|
*(.rodata)
|
||
|
*(.rodata.*)
|
||
|
*(.gnu.linkonce.r.*)
|
||
|
}
|
||
|
|
||
|
/* End of code and read-only segment */
|
||
|
PROVIDE( etext = . );
|
||
|
_etext = .;
|
||
|
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
/* HTIF, isolated onto separate page */
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
. = ALIGN(0x1000);
|
||
|
.htif :
|
||
|
{
|
||
|
PROVIDE( __htif_base = .);
|
||
|
*(.htif)
|
||
|
}
|
||
|
. = ALIGN(0x1000);
|
||
|
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
/* Initialized data segment */
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
|
||
|
/* Start of initialized data segment */
|
||
|
. = ALIGN(16);
|
||
|
_fdata = .;
|
||
|
|
||
|
/* data: Writable data */
|
||
|
.data :
|
||
|
{
|
||
|
*(.data)
|
||
|
*(.data.*)
|
||
|
*(.srodata*)
|
||
|
*(.gnu.linkonce.d.*)
|
||
|
*(.comment)
|
||
|
}
|
||
|
|
||
|
/* End of initialized data segment */
|
||
|
. = ALIGN(4);
|
||
|
PROVIDE( edata = . );
|
||
|
_edata = .;
|
||
|
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
/* Uninitialized data segment */
|
||
|
/*--------------------------------------------------------------------*/
|
||
|
|
||
|
/* Start of uninitialized data segment */
|
||
|
. = .;
|
||
|
_fbss = .;
|
||
|
|
||
|
/* sbss: Uninitialized writeable small data section */
|
||
|
. = .;
|
||
|
|
||
|
/* bss: Uninitialized writeable data section */
|
||
|
. = .;
|
||
|
_bss_start = .;
|
||
|
.bss :
|
||
|
{
|
||
|
*(.bss)
|
||
|
*(.bss.*)
|
||
|
*(.sbss*)
|
||
|
*(.gnu.linkonce.b.*)
|
||
|
*(COMMON)
|
||
|
}
|
||
|
|
||
|
.sbi :
|
||
|
{
|
||
|
*(.sbi)
|
||
|
}
|
||
|
|
||
|
.payload :
|
||
|
{
|
||
|
*(.payload)
|
||
|
}
|
||
|
|
||
|
_end = .;
|
||
|
}
|