blob: 0f6e388bab8074f5d852444b357b98e36becb546 [file] [log] [blame]
Kevin O'Connord2899772008-07-06 09:56:14 -04001// Linker definitions for merging 16 and 32 bit code
2//
Kevin O'Connor5b199ac2009-05-06 23:23:01 -04003// Copyright (C) 2008,2009 Kevin O'Connor <kevin@koconnor.net>
Kevin O'Connord2899772008-07-06 09:56:14 -04004//
Kevin O'Connorb1b7c2a2009-01-15 20:52:58 -05005// This file may be distributed under the terms of the GNU LGPLv3 license.
Kevin O'Connord2899772008-07-06 09:56:14 -04006
Kevin O'Connord2899772008-07-06 09:56:14 -04007OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
8OUTPUT_ARCH("i386")
Kevin O'Connor5b199ac2009-05-06 23:23:01 -04009ENTRY(post32)
Kevin O'Connord2899772008-07-06 09:56:14 -040010SECTIONS
11{
12 .text code32_start : {
Kevin O'Connorc0693942009-06-10 21:56:01 -040013 *(.text32)
Kevin O'Connord2899772008-07-06 09:56:14 -040014
15 . = code16_start ;
Kevin O'Connord2899772008-07-06 09:56:14 -040016 *(.text16)
Kevin O'Connor711ddc62009-01-17 15:17:34 -050017 final_code16_end = . ;
Kevin O'Connord2899772008-07-06 09:56:14 -040018 }
Kevin O'Connorc0693942009-06-10 21:56:01 -040019 /DISCARD/ : {
20 *(.text*) *(.data*) *(.bss*) *(.rodata*)
21 *(COMMON) *(.discard*) *(.eh_frame)
22 }
Kevin O'Connord2899772008-07-06 09:56:14 -040023}