/* $FreeBSD$ */

TARGET(elf32-tradbigmips)
OUTPUT_FORMAT("elf32-tradbigmips", "elf32-tradbigmips", "elf32-tradlittlemips")
OUTPUT_ARCH(mips)
ENTRY(_start)
   __DYNAMIC = 0;
PROVIDE (_DYNAMIC = 0);

SECTIONS {
	. = KERNLOADADDR + SIZEOF_HEADERS;

	.text . : {
	    	*(.text)
		*(.dynamic)
		etext = .;
		_etext = .;
		. = ALIGN(0x2000);
	}

	.rodata ALIGN(0x2000) : {
		_fdata = .;
	    	*(.rodata)
		. = ALIGN(32);
	}
	
	.data . : {
                _rwdata = .;
	    	*(.data)
		. = ALIGN(32);
		CONSTRUCTORS;
	}

	_gp = (. + 0x8000);

	.sdata . : {
                _small_start = .;
		*(.sdata)
		. = ALIGN(32);
		edata = .;
		_edata = .;
	}

	.sbss . : {
		__bss_start = .;
		_fbss = .;
		*(.sbss) *(.scommon)
                _small_end = .;
		. = ALIGN(32);
	}

	.bss . : {
		*(.bss)
		*(COMMON)
		. = ALIGN(32);
		_end = .;
		end = .;
	}

}