forked from mirrors/linux
		
	The various x86 linker scripts use the three-argument linker script command variant OUTPUT_FORMAT(DEFAULT, BIG, LITTLE) which specifies three object file formats when the -EL and -EB linker command line options are used. When -EB is specified, OUTPUT_FORMAT issues the BIG object file format, when -EL, LITTLE, respectively, and when neither is specified, DEFAULT. However, those -E[LB] options are not used by arch/x86/ so switch to the simple OUTPUT_FORMAT(BFDNAME) macro variant. No functional changes. Signed-off-by: Borislav Petkov <bp@suse.de> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: x86@kernel.org Link: https://lkml.kernel.org/r/20190109181531.27513-1-bp@alien8.de
		
			
				
	
	
		
			64 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
/*
 | 
						|
 * setup.ld
 | 
						|
 *
 | 
						|
 * Linker script for the i386 setup code
 | 
						|
 */
 | 
						|
OUTPUT_FORMAT("elf32-i386")
 | 
						|
OUTPUT_ARCH(i386)
 | 
						|
ENTRY(_start)
 | 
						|
 | 
						|
SECTIONS
 | 
						|
{
 | 
						|
	. = 0;
 | 
						|
	.bstext		: { *(.bstext) }
 | 
						|
	.bsdata		: { *(.bsdata) }
 | 
						|
 | 
						|
	. = 495;
 | 
						|
	.header		: { *(.header) }
 | 
						|
	.entrytext	: { *(.entrytext) }
 | 
						|
	.inittext	: { *(.inittext) }
 | 
						|
	.initdata	: { *(.initdata) }
 | 
						|
	__end_init = .;
 | 
						|
 | 
						|
	.text		: { *(.text) }
 | 
						|
	.text32		: { *(.text32) }
 | 
						|
 | 
						|
	. = ALIGN(16);
 | 
						|
	.rodata		: { *(.rodata*) }
 | 
						|
 | 
						|
	.videocards	: {
 | 
						|
		video_cards = .;
 | 
						|
		*(.videocards)
 | 
						|
		video_cards_end = .;
 | 
						|
	}
 | 
						|
 | 
						|
	. = ALIGN(16);
 | 
						|
	.data		: { *(.data*) }
 | 
						|
 | 
						|
	.signature	: {
 | 
						|
		setup_sig = .;
 | 
						|
		LONG(0x5a5aaa55)
 | 
						|
	}
 | 
						|
 | 
						|
 | 
						|
	. = ALIGN(16);
 | 
						|
	.bss		:
 | 
						|
	{
 | 
						|
		__bss_start = .;
 | 
						|
		*(.bss)
 | 
						|
		__bss_end = .;
 | 
						|
	}
 | 
						|
	. = ALIGN(16);
 | 
						|
	_end = .;
 | 
						|
 | 
						|
	/DISCARD/ : { *(.note*) }
 | 
						|
 | 
						|
	/*
 | 
						|
	 * The ASSERT() sink to . is intentional, for binutils 2.14 compatibility:
 | 
						|
	 */
 | 
						|
	. = ASSERT(_end <= 0x8000, "Setup too big!");
 | 
						|
	. = ASSERT(hdr == 0x1f1, "The setup header has the wrong offset!");
 | 
						|
	/* Necessary for the very-old-loader check to work... */
 | 
						|
	. = ASSERT(__end_init <= 5*512, "init sections too big!");
 | 
						|
 | 
						|
}
 |