DEFAULTS {

    heap_reserve = 1M
    stack_reserve = 512K

}
//
// Program layout for PID built programs.
//
//

SECTIONS
{

//
// The text segment
//

    .picbase                      0x00010000 : 
    .text                                    :
    .syscall                                 :
    .intercall                               :
    .interfunc                               :
    .fixaddr                                 :
    .fixtype                                 :
    .rodata                                  :   
    .secinfo                                 :

//
// The data segment
//
    
    .pidbase                     0x000000000 :
    .sdabase                                 :
    .sbss                                    :
    .sdata                                   :
    .data                                    :
    .bss                                     :
    .ghcovfz			       CLEAR :
    .ghcovcz			       CLEAR :
    .ghcovdz			       CLEAR :
    .heap                   ALIGN(32) PAD( heap_reserve +
	    // Add space for call-graph profiling if used:
	    (isdefined(__ghs_indgcount)?(2000+(sizeof(.text)/2)):0) +
	    // Add estimated space for call-count profiling if used:
	    (isdefined(__ghs_indmcount)?10000:0) )
	    				     :
    .stack      ALIGN(32) PAD(stack_reserve) :
}
